Я воспроизвел сборки как x86, так и x64 со следующими веб-сайтами:https://pass.carrefour.es/zona-clientehttps://online.bankofcyprus.com/netteller-web/с C ++ CEF на основе проекта.(Я думаю, что это была ветка CEF 3282 - Chrome v60 - в то время).Если я правильно помню, это также воспроизведено с помощью cefclient.Проблема действительно была вызвана очень большим JavaScript-кодом, попадающим на страницу.
Я увеличил размер стека в .vcxproj:
<StackReserveSize>0x00120000</StackReserveSize>
(поэтому добавьте 128 КБ дополнительно кпо умолчанию 1 МБ).
У NodeJS есть опция --v8 с именем --stack_size, которая звучит похоже, но я не знаю, есть ли что-то подобное в CEF (по крайней мере, я не помню, чтобы
Что я тогда прокомментировал для исправления:
Increase stack size from the default 1MB adding 128 KB more.
This seems to be necessary for renderer's V8, which is trashing
the page guard instead of raising JS RangeError or stack overflow,
but blows up with STATUS_GUARD_PAGE_VIOLATION or STATUS_STACK_OVERFLOW *and*
overwriting the first frame.
The debugger itself is defeated since there is no context to determine which
10000+ lines JS blows up the parser.
Я не совсем уверен, почему V8 ведет себя так (я могу быть совершенно неправ, так какэто было критическое исправление для множества проблем поддержки, и я просто использовал больше метод проб и ошибок, а не тщательную отладку).
Для удобства, вот сообщенные ошибки (отредактированные):
[*edited*] webpage crashes if you access https://pass.carrefour.es/zona-cliente
We have internal repro 100%.
и
If you access the webpage https://online.bankofcyprus.com/netteller-web/ in [*edited*], the tab crashes unexpectedly:
"The webpage has quit unexpectedly. The problem may have been caused by an exception, or another exceptional condition such as blocking scripts or requests generated by the webpage.
Please Reload page or go Back to the previous page."
We have internal repro. Full dump can be found here: *edited*
Проблемы, которые могут быть связаны: V8https://bugs.chromium.org/p/v8/issues/detail?id=8234https://bugs.chromium.org/p/v8/issues/detail?id=8053https://bugs.chromium.org/p/v8/issues/detail?id=6617https://bugs.chromium.org/p/v8/issues/detail?id=6438
Хром:https://bugs.chromium.org/p/chromium/issues/detail?id=753705