about summary refs log tree commit diff
path: root/src/afl-cc.c
diff options
context:
space:
mode:
authorvanhauser-thc <vh@thc.org>2023-05-23 12:14:58 +0200
committervanhauser-thc <vh@thc.org>2023-05-23 12:14:58 +0200
commit22837b5ad2d1cc6313c706ac9cb7fcd005cd3c2c (patch)
tree1198fa479800e29c1216b46ed4daf7adb9c64608 /src/afl-cc.c
parentdd736126dc9da78d6828cdf76f7eb8b389af7ed3 (diff)
downloadafl++-22837b5ad2d1cc6313c706ac9cb7fcd005cd3c2c.tar.gz
response file fix
Diffstat (limited to 'src/afl-cc.c')
-rw-r--r--src/afl-cc.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/afl-cc.c b/src/afl-cc.c
index 64c0ce66..84fe70ec 100644
--- a/src/afl-cc.c
+++ b/src/afl-cc.c
@@ -574,14 +574,15 @@ static void process_params(u32 argc, char **argv) {
 
       }
 
-      u8    *tmpbuf = malloc(st.st_size + 1), *ptr;
+      u8    *tmpbuf = malloc(st.st_size + 2), *ptr;
       char **args = malloc(sizeof(char *) * (st.st_size >> 1));
       int    count = 1, cont = 0, cont_act = 0;
 
-      while (fgets(tmpbuf, st.st_size, f)) {
+      while (fgets(tmpbuf, st.st_size + 1, f)) {
 
         ptr = tmpbuf;
-        // no leading whitespace
+        // fprintf(stderr, "1: %s\n", ptr);
+        //  no leading whitespace
         while (isspace(*ptr)) {
 
           ++ptr;
@@ -603,6 +604,8 @@ static void process_params(u32 argc, char **argv) {
 
         }
 
+        // fprintf(stderr, "2: %s\n", ptr);
+
         // remove whitespace at end
         while (*ptr && isspace(ptr[strlen(ptr) - 1])) {
 
@@ -611,6 +614,7 @@ static void process_params(u32 argc, char **argv) {
 
         }
 
+        // fprintf(stderr, "3: %s\n", ptr);
         if (*ptr) {
 
           do {