Chromium Code Reviews| Index: third_party/WebKit/Source/bindings/core/v8/V8Initializer.cpp |
| diff --git a/third_party/WebKit/Source/bindings/core/v8/V8Initializer.cpp b/third_party/WebKit/Source/bindings/core/v8/V8Initializer.cpp |
| index 35d5d5ee5cd59a950e9271c596e920f3a4513bbb..6323308b92a65a97eee04e2247b1aca7d9442916 100644 |
| --- a/third_party/WebKit/Source/bindings/core/v8/V8Initializer.cpp |
| +++ b/third_party/WebKit/Source/bindings/core/v8/V8Initializer.cpp |
| @@ -92,10 +92,17 @@ static Frame* findFrame(v8::Isolate* isolate, v8::Local<v8::Object> host, v8::Lo |
| static void reportFatalErrorInMainThread(const char* location, const char* message) |
| { |
| int memoryUsageMB = Platform::current()->actualMemoryUsageMB(); |
| - printf("V8 error: %s (%s). Current memory usage: %d MB\n", message, location, memoryUsageMB); |
| + DVLOG(1) << "V8 error: " << message << " (" << location << "). Current memory usage: " << memoryUsageMB << " MB"; |
| CRASH(); |
| } |
| +static void reportOOMErrorInMainThread(const char* location, bool isJsHeap) |
| +{ |
| + int memoryUsageMB = Platform::current()->actualMemoryUsageMB(); |
| + DVLOG(1) << "V8 " << (isJsHeap ? "javascript" : "process") << " OOM: (" << location << "). Current memory usage: " << memoryUsageMB << " MB"; |
|
Will Harris
2016/07/18 18:33:56
I made this a DVLOG instead of a VLOG so it won't
|
| + OOM_CRASH(); |
| +} |
| + |
| static String extractMessageForConsole(v8::Isolate* isolate, v8::Local<v8::Value> data) |
| { |
| if (V8DOMWrapper::isWrapper(isolate, data)) { |
| @@ -356,6 +363,7 @@ void V8Initializer::initializeMainThread() |
| initializeV8Common(isolate); |
| + isolate->SetOOMErrorHandler(reportOOMErrorInMainThread); |
| isolate->SetFatalErrorHandler(reportFatalErrorInMainThread); |
| isolate->AddMessageListener(messageHandlerInMainThread); |
| isolate->SetFailedAccessCheckCallbackFunction(failedAccessCheckCallbackInMainThread); |