mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
* thread.c (rb_fd_resize, rb_fd_copy): avoid NULL dereference upon
failed realloc by using xrealloc instead of not realloc. a patch from Jim Meyering <meyering at redhat.com> in [ruby-core:30920] [Bug #3489] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28457 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
392255310c
commit
d9d650ecfd
2 changed files with 9 additions and 2 deletions
|
@ -1,3 +1,10 @@
|
|||
Mon Jun 28 21:56:14 2010 Yusuke Endoh <mame@tsg.ne.jp>
|
||||
|
||||
* thread.c (rb_fd_resize, rb_fd_copy): avoid NULL dereference upon
|
||||
failed realloc by using xrealloc instead of not realloc. a patch
|
||||
from Jim Meyering <meyering at redhat.com> in [ruby-core:30920]
|
||||
[Bug #3489]
|
||||
|
||||
Mon Jun 28 20:32:33 2010 Masaki Suketa <masaki.suketa@nifty.ne.jp>
|
||||
|
||||
* test/win32ole/test_win32ole_method.rb (test_offset_vtbl): check
|
||||
|
|
4
thread.c
4
thread.c
|
@ -2285,7 +2285,7 @@ rb_fd_resize(int n, rb_fdset_t *fds)
|
|||
if (o < sizeof(fd_set)) o = sizeof(fd_set);
|
||||
|
||||
if (m > o) {
|
||||
fds->fdset = realloc(fds->fdset, m);
|
||||
fds->fdset = xrealloc(fds->fdset, m);
|
||||
memset((char *)fds->fdset + o, 0, m - o);
|
||||
}
|
||||
if (n >= fds->maxfd) fds->maxfd = n + 1;
|
||||
|
@ -2319,7 +2319,7 @@ rb_fd_copy(rb_fdset_t *dst, const fd_set *src, int max)
|
|||
|
||||
if (size < sizeof(fd_set)) size = sizeof(fd_set);
|
||||
dst->maxfd = max;
|
||||
dst->fdset = realloc(dst->fdset, size);
|
||||
dst->fdset = xrealloc(dst->fdset, size);
|
||||
memcpy(dst->fdset, src, size);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue