summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLouis Burda <quent.burda@gmail.com>2023-06-21 02:19:30 +0200
committerLouis Burda <quent.burda@gmail.com>2023-06-21 02:19:30 +0200
commit99ffc24d81679671bee0597b2b3572e0f81574e3 (patch)
tree0cc9d80d27ed47012607531b2ddf1531a714b447
parent668a02b190517cb347d3dab167f2d2449043efa7 (diff)
downloadtmpl-99ffc24d81679671bee0597b2b3572e0f81574e3.tar.gz
tmpl-99ffc24d81679671bee0597b2b3572e0f81574e3.zip
fixup! Fix ifeq with undefined variables
-rw-r--r--main.c12
1 files changed, 5 insertions, 7 deletions
diff --git a/main.c b/main.c
index f8d2ab0..e0201b5 100644
--- a/main.c
+++ b/main.c
@@ -106,14 +106,12 @@ template(char *line)
stack[stack_top].active = 0;
stack[stack_top].type = IFEQ;
if (!stack_top || stack[stack_top-1].active) {
+ sep = strchr(line + 6, ' ');
+ if (!sep) die("invalid #ifeq\n%lu: %s", lineno, line);
+ *sep = '\0';
value = getvar(line + 6);
- if (value) {
- sep = strchr(line + 6, ' ');
- if (!sep) die("invalid #ifeq\n%lu: %s",
- lineno, line);
- if (!strcmp(value, sep + 1))
- stack[stack_top].active = 1;
- }
+ if (value && !strcmp(value, sep + 1))
+ stack[stack_top].active = 1;
}
stack_top++;
} else if (!strcmp(line, "#else")) {