Radish alpha
H
rad:z3QDZAW2FAfuLvihrhiyDC9fAD8G9
HardenedBSD Package Manager
Radicle
Git
src/updating.c: set error code before jumping to out
rilysh committed 1 year ago
commit 28c0062263f6dd502ae534b2380efe75e1f099d5
parent 46b48f4
1 file changed +10 -10
modified src/updating.c
@@ -194,18 +194,21 @@ matcher(const char *affects, const char *origin, bool ignorecase)
			}
		}
		if (found == 0) {
-
			ent = malloc(sizeof(struct regex_cache));
-
			if (ent == NULL)
-
				goto err;
+
			if ((ent = malloc(sizeof(struct regex_cache))) == NULL) {
+
				ret = 0;
+
				goto out;
+
			}
			if ((ent->pattern = strdup(words[i])) == NULL) {
				free(ent);
-
				goto err;
+
				ret = 0;
+
				goto out;
			}
			re = convert_re(words[i]);
			if (re == NULL) {
				free(ent->pattern);
				free(ent);
-
				goto err;
+
				ret = 0;
+
				goto out;
			}
			regcomp(&ent->reg, re, (ignorecase) ? REG_ICASE|REG_EXTENDED : REG_EXTENDED);
			free(re);
@@ -217,13 +220,10 @@ matcher(const char *affects, const char *origin, bool ignorecase)
		}
	}

+
out:
	free(words);
	free(buf);
-
	return ret;
-
 err:
-
	free(words);
-
	free(buf);
-
	return 0;
+
	return (ret);
}

int