=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/lex/buf.c,v retrieving revision 1.5 retrieving revision 1.6 diff -c -r1.5 -r1.6 *** src/usr.bin/lex/buf.c 2015/11/19 23:28:03 1.5 --- src/usr.bin/lex/buf.c 2015/11/19 23:36:46 1.6 *************** *** 1,4 **** ! /* $OpenBSD: buf.c,v 1.5 2015/11/19 23:28:03 tedu Exp $ */ /* flex - tool to generate fast lexical analyzers */ --- 1,4 ---- ! /* $OpenBSD: buf.c,v 1.6 2015/11/19 23:36:46 tedu Exp $ */ /* flex - tool to generate fast lexical analyzers */ *************** *** 78,84 **** char *t; size_t tsz; ! t = malloc(tsz = strlen(fmt) + strlen(s) + 1); if (!t) flexfatal(_("Allocation of buffer to print string failed")); snprintf(t, tsz, fmt, s); --- 78,85 ---- char *t; size_t tsz; ! tsz = strlen(fmt) + strlen(s) + 1; ! t = malloc(tsz); if (!t) flexfatal(_("Allocation of buffer to print string failed")); snprintf(t, tsz, fmt, s); *************** *** 100,113 **** char *dst, *t; size_t tsz; ! t = malloc(tsz = strlen("#line \"\"\n") + /* constant parts */ ! 2 * strlen(filename) + /* filename with possibly all ! * backslashes escaped */ (int) (1 + log10(abs(lineno))) + /* line number */ ! 1); /* NUL */ if (!t) flexfatal(_("Allocation of buffer for line directive failed")); ! for (dst = t + snprintf(t, tsz, "#line %d \"", lineno), src = filename; *src; *dst++ = *src++) if (*src == '\\') /* escape backslashes */ *dst++ = '\\'; *dst++ = '"'; --- 101,115 ---- char *dst, *t; size_t tsz; ! tsz = strlen("#line \"\"\n") + /* constant parts */ ! 2 * strlen(filename) + /* filename with possibly all backslashes escaped */ (int) (1 + log10(abs(lineno))) + /* line number */ ! 1; /* NUL */ ! t = malloc(tsz); if (!t) flexfatal(_("Allocation of buffer for line directive failed")); ! dst = t + snprintf(t, tsz, "#line %d \"", lineno); ! for (src = filename; *src; *dst++ = *src++) if (*src == '\\') /* escape backslashes */ *dst++ = '\\'; *dst++ = '"'; *************** *** 186,192 **** size_t strsz; val = val ? val : ""; ! str = (char *) malloc(strsz = strlen(fmt) + strlen(def) + strlen(val) + 2); if (!str) flexfatal(_("Allocation of buffer for m4 def failed")); --- 188,195 ---- size_t strsz; val = val ? val : ""; ! strsz = strlen(fmt) + strlen(def) + strlen(val) + 2; ! str = malloc(strsz); if (!str) flexfatal(_("Allocation of buffer for m4 def failed")); *************** *** 207,213 **** char *str; size_t strsz; ! str = malloc(strsz = strlen(fmt) + strlen(def) + 2); if (!str) flexfatal(_("Allocation of buffer for m4 undef failed")); --- 210,217 ---- char *str; size_t strsz; ! strsz = strlen(fmt) + strlen(def) + 2; ! str = malloc(strsz); if (!str) flexfatal(_("Allocation of buffer for m4 undef failed"));