+2013-03-05 Paul Pluzhnikov <ppluzhnikov@google.com>
+
+ * stdio-common/vfprintf.c (vfprintf): Check malloc return; don't
+ call free(NULL).
+
2013-03-05 David S. Miller <davem@davemloft.net>
* po/es.po: Update from translation team.
-2013-03-04 Andreas Jaeger <aj@suse.de>
+2013-03-05 Andreas Jaeger <aj@suse.de>
* sysdeps/unix/sysv/linux/s390/bits/mman.h: Include
<bits/mman-linux.h>.
/* Just a counter. */
size_t cnt;
- free (workstart);
+ if (__builtin_expect (workstart != NULL, 0))
+ free (workstart);
workstart = NULL;
if (grouping == (const char *) -1)
{
workstart = (CHAR_T *) malloc ((MAX (prec, width) + 32)
* sizeof (CHAR_T));
+ if (workstart == NULL)
+ {
+ done = -1;
+ goto all_done;
+ }
workend = workstart + (MAX (prec, width) + 32);
}
}
break;
}
- free (workstart);
+ if (__builtin_expect (workstart != NULL, 0))
+ free (workstart);
workstart = NULL;
/* Write the following constant string. */
}
all_done:
- free (args_malloced);
- free (workstart);
+ if (__builtin_expect (args_malloced != NULL, 0))
+ free (args_malloced);
+ if (__builtin_expect (workstart != NULL, 0))
+ free (workstart);
/* Unlock the stream. */
_IO_funlockfile (s);
_IO_cleanup_region_end (0);