v8: fix --max_old_space_size=4096 integer overflow
See https://code.google.com/p/v8/issues/detail?id=3857 for the bug report and https://codereview.chromium.org/897543002 for the CL. PR-URL: https://github.com/iojs/io.js/pull/1166 Reviewed-By: Fedor Indutny <fedor@indutny.com>
This commit is contained in:
Родитель
b2e00e38dc
Коммит
22793da485
|
@ -5082,10 +5082,10 @@ bool Heap::ConfigureHeap(int max_semi_space_size, int max_old_space_size,
|
|||
max_semi_space_size_ = max_semi_space_size * MB;
|
||||
}
|
||||
if (max_old_space_size > 0) {
|
||||
max_old_generation_size_ = max_old_space_size * MB;
|
||||
max_old_generation_size_ = static_cast<intptr_t>(max_old_space_size) * MB;
|
||||
}
|
||||
if (max_executable_size > 0) {
|
||||
max_executable_size_ = max_executable_size * MB;
|
||||
max_executable_size_ = static_cast<intptr_t>(max_executable_size) * MB;
|
||||
}
|
||||
|
||||
// If max space size flags are specified overwrite the configuration.
|
||||
|
@ -5093,10 +5093,11 @@ bool Heap::ConfigureHeap(int max_semi_space_size, int max_old_space_size,
|
|||
max_semi_space_size_ = FLAG_max_semi_space_size * MB;
|
||||
}
|
||||
if (FLAG_max_old_space_size > 0) {
|
||||
max_old_generation_size_ = FLAG_max_old_space_size * MB;
|
||||
max_old_generation_size_ =
|
||||
static_cast<intptr_t>(FLAG_max_old_space_size) * MB;
|
||||
}
|
||||
if (FLAG_max_executable_size > 0) {
|
||||
max_executable_size_ = FLAG_max_executable_size * MB;
|
||||
max_executable_size_ = static_cast<intptr_t>(FLAG_max_executable_size) * MB;
|
||||
}
|
||||
|
||||
if (FLAG_stress_compaction) {
|
||||
|
|
Загрузка…
Ссылка в новой задаче