diff options
author | Ulrich Drepper <drepper@gmail.com> | 2012-01-16 09:03:20 -0500 |
---|---|---|
committer | Ulrich Drepper <drepper@gmail.com> | 2012-01-16 09:03:20 -0500 |
commit | 400aa020ea599b4319670a1cea7028930aeab588 (patch) | |
tree | 63a2fbf11faaf49a39433c2aa61c9f6bbd4d4af9 /stdlib/bug-fmtmsg1.c | |
parent | e0a309cf2a59042718fa95f97c5c35da33e61650 (diff) | |
download | glibc-400aa020ea599b4319670a1cea7028930aeab588.tar.gz glibc-400aa020ea599b4319670a1cea7028930aeab588.tar.xz glibc-400aa020ea599b4319670a1cea7028930aeab588.zip |
Fix locking problem in fmtmsg
Diffstat (limited to 'stdlib/bug-fmtmsg1.c')
-rw-r--r-- | stdlib/bug-fmtmsg1.c | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/stdlib/bug-fmtmsg1.c b/stdlib/bug-fmtmsg1.c new file mode 100644 index 0000000000..04bfaea3ce --- /dev/null +++ b/stdlib/bug-fmtmsg1.c @@ -0,0 +1,28 @@ +#include <fmtmsg.h> +#include <stdio.h> + + +static int +do_test (void) +{ + /* Ugly, but fmtmsg would otherwise print to stderr which we do not + want. */ + fclose (stderr); + stderr = stdout; + + int e1; + e1 = fmtmsg (MM_PRINT, "label:part", MM_WARNING, "text", "action", "tag"); + + int e2; + e2 = fmtmsg (MM_PRINT, "label2:part2", 11, "text2", "action2", "tag2"); + + addseverity (10, "additional severity"); + + int e3; + e3 = fmtmsg (MM_PRINT, "label3:part3", 10, "text3", "action3", "tag3"); + + return e1 != 0 || e2 != 0 || e3 != 0; +} + +#define TEST_FUNCTION do_test () +#include "../test-skeleton.c" |