Revision: 23962
Author:   [email protected]
Date:     Tue Sep 16 08:57:59 2014 UTC
Log:      Configure d8 & cctest to suppress Windows error dialogs.

[email protected]

Review URL: https://codereview.chromium.org/575473002
https://code.google.com/p/v8/source/detail?r=23962

Modified:
 /branches/bleeding_edge/src/d8.cc
 /branches/bleeding_edge/test/cctest/cctest.cc

=======================================
--- /branches/bleeding_edge/src/d8.cc   Mon Sep 15 11:17:00 2014 UTC
+++ /branches/bleeding_edge/src/d8.cc   Tue Sep 16 08:57:59 2014 UTC
@@ -54,6 +54,8 @@

 #if !defined(_WIN32) && !defined(_WIN64)
 #include <unistd.h>  // NOLINT
+#else
+#include <windows.h>  // NOLINT
 #endif

 #ifndef DCHECK
@@ -1595,6 +1597,19 @@


 int Shell::Main(int argc, char* argv[]) {
+#if (defined(_WIN32) || defined(_WIN64))
+  UINT new_flags =
+ SEM_FAILCRITICALERRORS | SEM_NOGPFAULTERRORBOX | SEM_NOOPENFILEERRORBOX;
+  UINT existing_flags = SetErrorMode(new_flags);
+  SetErrorMode(existing_flags | new_flags);
+  _CrtSetReportMode(_CRT_WARN, _CRTDBG_MODE_DEBUG | _CRTDBG_MODE_FILE);
+  _CrtSetReportFile(_CRT_WARN, _CRTDBG_FILE_STDERR);
+  _CrtSetReportMode(_CRT_ASSERT, _CRTDBG_MODE_DEBUG | _CRTDBG_MODE_FILE);
+  _CrtSetReportFile(_CRT_ASSERT, _CRTDBG_FILE_STDERR);
+  _CrtSetReportMode(_CRT_ERROR, _CRTDBG_MODE_DEBUG | _CRTDBG_MODE_FILE);
+  _CrtSetReportFile(_CRT_ERROR, _CRTDBG_FILE_STDERR);
+  _set_error_mode(_OUT_TO_STDERR);
+#endif
   if (!SetOptions(argc, argv)) return 1;
   v8::V8::InitializeICU(options.icu_data_file);
   v8::Platform* platform = v8::platform::CreateDefaultPlatform();
=======================================
--- /branches/bleeding_edge/test/cctest/cctest.cc Thu Jul 3 07:57:29 2014 UTC +++ /branches/bleeding_edge/test/cctest/cctest.cc Tue Sep 16 08:57:59 2014 UTC
@@ -34,6 +34,10 @@
 #include "test/cctest/profiler-extension.h"
 #include "test/cctest/trace-extension.h"

+#if (defined(_WIN32) || defined(_WIN64))
+#include <windows.h>  // NOLINT
+#endif
+
 enum InitializationState {kUnset, kUnintialized, kInitialized};
 static InitializationState initialization_state_  = kUnset;
 static bool disable_automatic_dispose_ = false;
@@ -138,6 +142,20 @@


 int main(int argc, char* argv[]) {
+#if (defined(_WIN32) || defined(_WIN64))
+  UINT new_flags =
+ SEM_FAILCRITICALERRORS | SEM_NOGPFAULTERRORBOX | SEM_NOOPENFILEERRORBOX;
+  UINT existing_flags = SetErrorMode(new_flags);
+  SetErrorMode(existing_flags | new_flags);
+  _CrtSetReportMode(_CRT_WARN, _CRTDBG_MODE_DEBUG | _CRTDBG_MODE_FILE);
+  _CrtSetReportFile(_CRT_WARN, _CRTDBG_FILE_STDERR);
+  _CrtSetReportMode(_CRT_ASSERT, _CRTDBG_MODE_DEBUG | _CRTDBG_MODE_FILE);
+  _CrtSetReportFile(_CRT_ASSERT, _CRTDBG_FILE_STDERR);
+  _CrtSetReportMode(_CRT_ERROR, _CRTDBG_MODE_DEBUG | _CRTDBG_MODE_FILE);
+  _CrtSetReportFile(_CRT_ERROR, _CRTDBG_FILE_STDERR);
+  _set_error_mode(_OUT_TO_STDERR);
+#endif
+
   v8::V8::InitializeICU();
   v8::Platform* platform = v8::platform::CreateDefaultPlatform();
   v8::V8::InitializePlatform(platform);

--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
--- You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to