зеркало из https://github.com/github/ruby.git
* gc.c (vm_xrealloc): use TRY_WITH_GC().
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43049 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
Родитель
165ebcb467
Коммит
4190cdddbb
10
gc.c
10
gc.c
|
@ -4766,15 +4766,7 @@ vm_xrealloc(rb_objspace_t *objspace, void *ptr, size_t size)
|
|||
oldsize = ((size_t *)ptr)[0];
|
||||
#endif
|
||||
|
||||
mem = realloc(ptr, size);
|
||||
if (!mem) {
|
||||
if (garbage_collect_with_gvl(objspace, 1, 1, GPR_FLAG_MALLOC)) {
|
||||
mem = realloc(ptr, size);
|
||||
}
|
||||
if (!mem) {
|
||||
ruby_memerror();
|
||||
}
|
||||
}
|
||||
TRY_WITH_GC(mem = realloc(ptr, size));
|
||||
ATOMIC_SIZE_ADD(malloc_increase, size);
|
||||
|
||||
#if CALC_EXACT_MALLOC_SIZE
|
||||
|
|
Загрузка…
Ссылка в новой задаче