apps/engine.c:78: error: BUFFER_OVERRUN_S2
  Offset: [1+max(1, `(*buf)->strlen`), `(*buf)->strlen` + 1] Size: [1, 256⋅`s->strlen` + 256⋅`(*buf)->strlen` + 66048].
Showing all 6 steps of the trace


apps/engine.c:49:1: <Length trace>
47.   };
48.   
49. > static int append_buf(char **buf, int *size, const char *s)
50.   {
51.       const int expand = 256;

apps/engine.c:49:1: Parameter `**buf`
47.   };
48.   
49. > static int append_buf(char **buf, int *size, const char *s)
50.   {
51.       const int expand = 256;

apps/engine.c:53:5: Assignment
51.       const int expand = 256;
52.       int len = strlen(s) + 1;
53.       char *p = *buf;
          ^
54.   
55.       if (p == NULL) {

apps/engine.c:76:13: Assignment
74.   
75.           if (blen > 0) {
76.               p += blen;
                  ^
77.               *p++ = ',';
78.               *p++ = ' ';

apps/engine.c:77:14: Assignment
75.           if (blen > 0) {
76.               p += blen;
77.               *p++ = ',';
                   ^
78.               *p++ = ' ';
79.           }

apps/engine.c:78:13: Array access: Offset: [1+max(1, (*buf)->strlen), (*buf)->strlen + 1] Size: [1, 256⋅s->strlen + 256⋅(*buf)->strlen + 66048]
76.               p += blen;
77.               *p++ = ',';
78.               *p++ = ' ';
                  ^
79.           }
80.       }
