projects
/
platform
/
upstream
/
linaro-glibc.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
fca9d8e
)
(__argp_fmtstream_ensure): Check for size_t overflow when reallocating storage.
author
Ulrich Drepper
<drepper@redhat.com>
Thu, 25 Sep 2003 05:34:28 +0000
(
05:34
+0000)
committer
Ulrich Drepper
<drepper@redhat.com>
Thu, 25 Sep 2003 05:34:28 +0000
(
05:34
+0000)
argp/argp-fmtstream.c
patch
|
blob
|
history
diff --git
a/argp/argp-fmtstream.c
b/argp/argp-fmtstream.c
index
d06ea84
..
215160b
100644
(file)
--- a/
argp/argp-fmtstream.c
+++ b/
argp/argp-fmtstream.c
@@
-385,10
+385,11
@@
__argp_fmtstream_ensure (struct argp_fmtstream *fs, size_t amount)
if ((size_t) (fs->end - fs->buf) < amount)
/* Gotta grow the buffer. */
{
- size_t new_size = fs->end - fs->buf + amount;
- char *new_buf = realloc (fs->buf, new_size);
+ size_t old_size = fs->end - fs->buf;
+ size_t new_size = old_size + amount;
+ char *new_buf;
- if (
! new_buf
)
+ if (
new_size < old_size || ! (new_buf = realloc (fs->buf, new_size))
)
{
__set_errno (ENOMEM);
return 0;