mirror of
https://github.com/phpv8/v8js.git
synced 2024-12-22 17:31:53 +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;
|
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) {
|
if (c->memory_limit_hit) {
|
||||||
// Execution has been terminated due to memory limit
|
// Execution has been terminated due to memory limit
|
||||||
sprintf(exception_string, "Script memory limit of %lu bytes exceeded", memory_limit);
|
sprintf(exception_string, "Script memory limit of %lu bytes exceeded", memory_limit);
|
||||||
|
Loading…
Reference in New Issue
Block a user