mirror of
https://github.com/jerryscript-project/jerryscript.git
synced 2025-12-15 16:29:21 +00:00
Add missing GC limit check to realloc with system allocator (#3279)
JerryScript-DCO-1.0-Signed-off-by: Dániel Bátyai dbatyai@inf.u-szeged.hu
This commit is contained in:
parent
a8b627a80c
commit
3b7d254e6a
@ -649,7 +649,15 @@ jmem_heap_realloc_block (void *ptr, /**< memory region to reallocate */
|
||||
JMEM_HEAP_STAT_ALLOC (new_size);
|
||||
return ret_block_p;
|
||||
#else /* ENABLED (JERRY_SYSTEM_ALLOCATOR) */
|
||||
JERRY_CONTEXT (jmem_heap_allocated_size) += (new_size - old_size);
|
||||
const size_t required_size = new_size - old_size;
|
||||
#if !ENABLED (JERRY_MEM_GC_BEFORE_EACH_ALLOC)
|
||||
if (JERRY_CONTEXT (jmem_heap_allocated_size) + required_size >= JERRY_CONTEXT (jmem_heap_limit))
|
||||
#endif /* !ENABLED (JERRY_MEM_GC_BEFORE_EACH_ALLOC) */
|
||||
{
|
||||
ecma_free_unused_memory (JMEM_PRESSURE_LOW);
|
||||
}
|
||||
|
||||
JERRY_CONTEXT (jmem_heap_allocated_size) += required_size;
|
||||
|
||||
while (JERRY_CONTEXT (jmem_heap_allocated_size) >= JERRY_CONTEXT (jmem_heap_limit))
|
||||
{
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user