Fixed buffer overflow in macro expansion
authorLukas Krickl <lukas@krickl.dev>
Wed, 20 Dec 2023 18:12:26 +0000 (19:12 +0100)
committerLukas Krickl <lukas@krickl.dev>
Wed, 20 Dec 2023 18:12:26 +0000 (19:12 +0100)
src/ulas.c

index f516a27f05258a796ef069dfaf53be21e92f083f..e7dd2c400a61bd2deda334190ed03011e43999d3 100644 (file)
@@ -826,7 +826,7 @@ char *ulas_preprocexpand(struct ulas_preproc *pp, const char *raw_line,
           }
 
           if (!tocat) {
-            ulas_strensr(&pp->line, valread + 1);
+            ulas_strensr(&pp->line, strlen(pp->line.buf) + valread + 1);
             strncat(pp->line.buf, val - valread, valread);
           } else {
             // make sure to include leading white space