fix uninitialized/stale use of alloc (%m modifier) flag in scanf
authorRich Felker <dalias@aerifal.cx>
Sat, 20 Jul 2013 04:21:11 +0000 (00:21 -0400)
committerRich Felker <dalias@aerifal.cx>
Sat, 20 Jul 2013 04:21:11 +0000 (00:21 -0400)
commit1d92cddb1e1ed4b6cc0e55461727561e7a2522e0
treed4f7a600da055639ac71aa28463d862d04fc91d7
parent8389520ed5ad6f0033d6426e21ef653fa5ca26a4
fix uninitialized/stale use of alloc (%m modifier) flag in scanf

for conversion specifiers, alloc is always set when the specifier is
parsed. however, if scanf stops due to mismatching literal text,
either an uninitialized (if no conversions have been performed yet) or
stale (from the previous conversion) of the flag will be used,
possibly causing an invalid pointer to be passed to free when the
function returns.
src/stdio/vfscanf.c
src/stdio/vfwscanf.c