diff options
author | Ulrich Drepper <drepper@redhat.com> | 2008-03-30 05:39:35 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2008-03-30 05:39:35 +0000 |
commit | 43f6bec195805539de8c3ef717fe3529809478df (patch) | |
tree | 0f034399765a3f6c25a63560b6acf831b58e0d2e | |
parent | e8a3212650421c7970bc776b4609987bd47a8cdf (diff) | |
download | glibc-43f6bec195805539de8c3ef717fe3529809478df.tar glibc-43f6bec195805539de8c3ef717fe3529809478df.tar.gz glibc-43f6bec195805539de8c3ef717fe3529809478df.tar.bz2 glibc-43f6bec195805539de8c3ef717fe3529809478df.zip |
* stdio-common/vfprintf.c (vfprintf): Correct overflow test.
-rw-r--r-- | ChangeLog | 2 | ||||
-rw-r--r-- | stdio-common/vfprintf.c | 3 |
2 files changed, 4 insertions, 1 deletions
@@ -1,5 +1,7 @@ 2008-03-29 Ulrich Drepper <drepper@redhat.com> + * stdio-common/vfprintf.c (vfprintf): Correct overflow test. + [BZ #5939] * sysdeps/posix/tempname.c (__gen_tempname): Correct flag selection. diff --git a/stdio-common/vfprintf.c b/stdio-common/vfprintf.c index d10a5c6a13..ca6343c37f 100644 --- a/stdio-common/vfprintf.c +++ b/stdio-common/vfprintf.c @@ -1513,7 +1513,8 @@ vfprintf (FILE *s, const CHAR_T *format, va_list ap) if (prec > width && prec + 32 > (int)(sizeof (work_buffer) / sizeof (work_buffer[0]))) { - if (__builtin_expect (prec > ~((size_t) 0) - 31, 0)) + if (__builtin_expect (prec > ~((size_t) 0) / sizeof (CHAR_T) - 31, + 0)) { done = -1; goto all_done; |