Avoid an access violation if malloc failes.
[glibc.git] / stdio-common / bug1.c
blob18e7d4c257dc9d6d3c31903e9459673d4b1dbeb7
1 #include <stdio.h>
2 #include <stdlib.h>
3 #include <string.h>
5 int
6 main (void)
8 char *bp;
9 size_t size;
10 FILE *stream;
11 int lose = 0;
13 stream = open_memstream (&bp, &size);
14 fprintf (stream, "hello");
15 fflush (stream);
16 printf ("buf = %s, size = %Zu\n", bp, size);
17 lose |= size != 5;
18 lose |= strncmp (bp, "hello", size);
19 fprintf (stream, ", world");
20 fclose (stream);
21 printf ("buf = %s, size = %Zu\n", bp, size);
22 lose |= size != 12;
23 lose |= strncmp (bp, "hello, world", 12);
25 puts (lose ? "Test FAILED!" : "Test succeeded.");
27 free (bp);
29 return lose;