summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorChristos Zoulas <christos@zoulas.com>2017-01-22 18:28:46 +0100
committerWill Estes <westes575@gmail.com>2017-01-23 12:31:21 -0500
commit43a5bebd7d924d2a51133a11d992ccf752fa8843 (patch)
tree1515774dfaeeeab7893300edff8e0f187ad9d48e /src
parentfb175a49c3419885d0d0343209486324d629501a (diff)
scanner: manage path to m4 better.
Avoid alloca() for SSP; it is better anyway; since we don't need to strdup the path.
Diffstat (limited to 'src')
-rw-r--r--src/main.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/main.c b/src/main.c
index 83f66b0..fe94777 100644
--- a/src/main.c
+++ b/src/main.c
@@ -361,16 +361,17 @@ void check_options (void)
endOfDir = path+length;
{
- char m4_path[endOfDir-path + 1 + m4_length + 1];
+ char *m4_path = calloc(endOfDir-path + 1 + m4_length + 1, 1);
memcpy(m4_path, path, endOfDir-path);
m4_path[endOfDir-path] = '/';
memcpy(m4_path + (endOfDir-path) + 1, m4, m4_length + 1);
if (stat(m4_path, &sbuf) == 0 &&
(S_ISREG(sbuf.st_mode)) && sbuf.st_mode & S_IXUSR) {
- m4 = strdup(m4_path);
+ m4 = m4_path;
break;
}
+ free(m4_path);
}
path = endOfDir+1;
} while (path[0]);