mirror of
https://github.com/phpv8/v8js.git
synced 2024-12-22 12:51:52 +00:00
Re-check memory limit, refs #217
This commit is contained in:
parent
2b4d41abb1
commit
4faab8842c
10
v8js_v8.cc
10
v8js_v8.cc
@ -204,6 +204,16 @@ void v8js_v8_call(v8js_ctx *c, zval **return_value,
|
||||
return;
|
||||
}
|
||||
|
||||
if (memory_limit && !c->memory_limit_hit) {
|
||||
// Re-check memory limit (very short executions might never be hit by timer thread)
|
||||
v8::HeapStatistics hs;
|
||||
isolate->GetHeapStatistics(&hs);
|
||||
|
||||
if (hs.used_heap_size() > memory_limit) {
|
||||
c->memory_limit_hit = true;
|
||||
}
|
||||
}
|
||||
|
||||
if (c->memory_limit_hit) {
|
||||
// Execution has been terminated due to memory limit
|
||||
sprintf(exception_string, "Script memory limit of %lu bytes exceeded", memory_limit);
|
||||
|
Loading…
Reference in New Issue
Block a user