stdcxx-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From far...@apache.org
Subject svn commit: r634728 - in /stdcxx/trunk/etc/config/src: DYNAMIC_CAST.cpp GLOBAL_BAD_ALLOC.cpp NO_DBL_TRAPS.cpp STD_BAD_ALLOC.cpp THREAD_SAFE_EXCEPTIONS.cpp nodbg.h
Date Fri, 07 Mar 2008 16:16:57 GMT
Author: faridz
Date: Fri Mar  7 08:16:56 2008
New Revision: 634728

URL: http://svn.apache.org/viewvc?rev=634728&view=rev
Log:
2008-03-07  Farid Zaripov  <farid_zaripov@epam.com>

	* etc/config/src/nodbg.h: New header file with definition of
	the nodbg() to prevent GUI popups on Windows.
	* etc/config/src/DYNAMIC_CAST.cpp: Removed invoking of the
	_CrtSetReportMode(), using nodbg() instead.
	* etc/config/src/GLOBAL_BAD_ALLOC.cpp: Ditto.
	* etc/config/src/STD_BAD_ALLOC.cpp: Ditto.
	* etc/config/src/THREAD_SAFE_EXCEPTIONS.cpp: Ditto.
	* etc/config/src/NO_DBL_TRAPS.cpp: Invoke nodbg() before test to
	prevent the Dr.Watson popups (was detected on Borland Turbo C++).

Added:
    stdcxx/trunk/etc/config/src/nodbg.h   (with props)
Modified:
    stdcxx/trunk/etc/config/src/DYNAMIC_CAST.cpp
    stdcxx/trunk/etc/config/src/GLOBAL_BAD_ALLOC.cpp
    stdcxx/trunk/etc/config/src/NO_DBL_TRAPS.cpp
    stdcxx/trunk/etc/config/src/STD_BAD_ALLOC.cpp
    stdcxx/trunk/etc/config/src/THREAD_SAFE_EXCEPTIONS.cpp

Modified: stdcxx/trunk/etc/config/src/DYNAMIC_CAST.cpp
URL: http://svn.apache.org/viewvc/stdcxx/trunk/etc/config/src/DYNAMIC_CAST.cpp?rev=634728&r1=634727&r2=634728&view=diff
==============================================================================
--- stdcxx/trunk/etc/config/src/DYNAMIC_CAST.cpp (original)
+++ stdcxx/trunk/etc/config/src/DYNAMIC_CAST.cpp Fri Mar  7 08:16:56 2008
@@ -23,10 +23,7 @@
  **************************************************************************/
 
 #include "config.h"
-
-#if (defined (_WIN32) || defined (_WIN64)) && !defined (__CYGWIN__)
-#  include <crtdbg.h>
-#endif   // _WIN{32,64}
+#include "nodbg.h"
 
 
 #ifndef _RWSTD_NO_HONOR_STD
@@ -47,14 +44,7 @@
 
 int main ()
 {
-#if (defined (_WIN32) || defined (_WIN64)) && !defined (__CYGWIN__)
-
-    // prevent the Microsoft C library from popping up GUI windows
-    _CrtSetReportMode (_CRT_WARN, _CRTDBG_MODE_DEBUG);
-    _CrtSetReportMode (_CRT_ERROR, _CRTDBG_MODE_DEBUG);
-    _CrtSetReportMode (_CRT_ASSERT, _CRTDBG_MODE_DEBUG);
-
-#endif   // _WIN{32,64}
+    nodbg ();
 
     B b;
 

Modified: stdcxx/trunk/etc/config/src/GLOBAL_BAD_ALLOC.cpp
URL: http://svn.apache.org/viewvc/stdcxx/trunk/etc/config/src/GLOBAL_BAD_ALLOC.cpp?rev=634728&r1=634727&r2=634728&view=diff
==============================================================================
--- stdcxx/trunk/etc/config/src/GLOBAL_BAD_ALLOC.cpp (original)
+++ stdcxx/trunk/etc/config/src/GLOBAL_BAD_ALLOC.cpp Fri Mar  7 08:16:56 2008
@@ -23,6 +23,7 @@
  **************************************************************************/
 
 #include "config.h"
+#include "nodbg.h"
 
 #if !defined (_RWSTD_NO_NEW_THROWS) && !defined (_RWSTD_NO_NEW_OFLOW_SAFE)
 #  include <stddef.h>   // for size_t
@@ -45,29 +46,11 @@
 struct bad_alloc { };
 
 
-#if defined (_MSC_VER)
-
-#include <crtdbg.h>  // for _CrtSetReportMode()
-
-void disable_msc_gui ()
-{
-    _CrtSetReportMode (_CRT_WARN, _CRTDBG_MODE_FILE);
-    _CrtSetReportMode (_CRT_ERROR, _CRTDBG_MODE_FILE);
-    _CrtSetReportMode (_CRT_ASSERT, _CRTDBG_MODE_FILE);
-}
-
-#else   // if !defined (_MSC_VER)
-
-void disable_msc_gui () { /* no-op */ }
-
-#endif   // _MSC_VER
-
-
 int main ()
 {
     // prevent MSVC's libc from popping up a dialog box
     // with an out-of-memory message
-    disable_msc_gui ();
+    nodbg ();
 
     try {
 

Modified: stdcxx/trunk/etc/config/src/NO_DBL_TRAPS.cpp
URL: http://svn.apache.org/viewvc/stdcxx/trunk/etc/config/src/NO_DBL_TRAPS.cpp?rev=634728&r1=634727&r2=634728&view=diff
==============================================================================
--- stdcxx/trunk/etc/config/src/NO_DBL_TRAPS.cpp (original)
+++ stdcxx/trunk/etc/config/src/NO_DBL_TRAPS.cpp Fri Mar  7 08:16:56 2008
@@ -37,11 +37,15 @@
  * disables traps as required by C).
  */
 
+#include "nodbg.h"
+
 double dbl_get_zero ();
 double dbl_get_one ();
 
 int main (int argc, char*[])
 {
+    nodbg ();
+
     double dbl_inf;
     double dbl_nan;
 

Modified: stdcxx/trunk/etc/config/src/STD_BAD_ALLOC.cpp
URL: http://svn.apache.org/viewvc/stdcxx/trunk/etc/config/src/STD_BAD_ALLOC.cpp?rev=634728&r1=634727&r2=634728&view=diff
==============================================================================
--- stdcxx/trunk/etc/config/src/STD_BAD_ALLOC.cpp (original)
+++ stdcxx/trunk/etc/config/src/STD_BAD_ALLOC.cpp Fri Mar  7 08:16:56 2008
@@ -23,6 +23,7 @@
  **************************************************************************/
 
 #include "config.h"
+#include "nodbg.h"
 
 #if !defined (_RWSTD_NO_NEW_THROWS) && !defined (_RWSTD_NO_NEW_OFLOW_SAFE)
 #  include <stddef.h>   // for size_t
@@ -52,29 +53,11 @@
 enum bad_alloc { };
 
 
-#if defined (_MSC_VER)
-
-#include <crtdbg.h>  // for _CrtSetReportMode()
-
-void disable_msc_gui ()
-{
-    _CrtSetReportMode (_CRT_WARN, _CRTDBG_MODE_FILE);
-    _CrtSetReportMode (_CRT_ERROR, _CRTDBG_MODE_FILE);
-    _CrtSetReportMode (_CRT_ASSERT, _CRTDBG_MODE_FILE);
-}
-
-#else   // if !defined (_MSC_VER)
-
-void disable_msc_gui () { /* no-op */ }
-
-#endif   // _MSC_VER
-
-
 int main ()
 {
     // prevent MSVC's libc from popping up a dialog box
     // with an out-of-memory message
-    disable_msc_gui ();
+    nodbg ();
 
     try {
 

Modified: stdcxx/trunk/etc/config/src/THREAD_SAFE_EXCEPTIONS.cpp
URL: http://svn.apache.org/viewvc/stdcxx/trunk/etc/config/src/THREAD_SAFE_EXCEPTIONS.cpp?rev=634728&r1=634727&r2=634728&view=diff
==============================================================================
--- stdcxx/trunk/etc/config/src/THREAD_SAFE_EXCEPTIONS.cpp (original)
+++ stdcxx/trunk/etc/config/src/THREAD_SAFE_EXCEPTIONS.cpp Fri Mar  7 08:16:56 2008
@@ -23,6 +23,7 @@
  **************************************************************************/
 
 #include "thread.h"
+#include "nodbg.h"
 
 
 extern "C" void* thread_proc (void *arg)
@@ -51,12 +52,7 @@
 
 int main ()
 {
-#if defined (_WIN32)
-    // disable displaying the critical-error-handler
-    // and general-protection-fault message boxes
-    // windows.h included in thread.h
-    SetErrorMode (SEM_FAILCRITICALERRORS | SEM_NOGPFAULTERRORBOX);
-#endif   // _WIN32
+    nodbg ();
 
     pthread_t tid [2];
 

Added: stdcxx/trunk/etc/config/src/nodbg.h
URL: http://svn.apache.org/viewvc/stdcxx/trunk/etc/config/src/nodbg.h?rev=634728&view=auto
==============================================================================
--- stdcxx/trunk/etc/config/src/nodbg.h (added)
+++ stdcxx/trunk/etc/config/src/nodbg.h Fri Mar  7 08:16:56 2008
@@ -0,0 +1,54 @@
+// definition of the nodbg() function
+
+/***************************************************************************
+ *
+ * Licensed to the Apache Software  Foundation (ASF) under one or more
+ * contributor  license agreements.  See  the NOTICE  file distributed
+ * with  this  work  for  additional information  regarding  copyright
+ * ownership.   The ASF  licenses this  file to  you under  the Apache
+ * License, Version  2.0 (the  License); you may  not use  this file
+ * except in  compliance with the License.   You may obtain  a copy of
+ * the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the  License is distributed on an  "AS IS" BASIS,
+ * WITHOUT  WARRANTIES OR CONDITIONS  OF ANY  KIND, either  express or
+ * implied.   See  the License  for  the  specific language  governing
+ * permissions and limitations under the License.
+ *
+ * Copyright 1999-2008 Rogue Wave Software, Inc.
+ * 
+ **************************************************************************/
+
+#ifdef _WIN32
+
+#  include <windows.h>
+
+#  ifdef _MSC_VER
+#    include <crtdbg.h>  // for _CrtSetReportMode()
+#  endif
+
+void nodbg ()
+{
+#  ifdef _MSC_VER
+    // prevent the Microsoft C library from popping up GUI windows
+    // on various failures and direct error messages to the console
+    // instead
+    _CrtSetReportMode (_CRT_WARN, _CRTDBG_MODE_DEBUG);
+    _CrtSetReportMode (_CRT_ERROR, _CRTDBG_MODE_DEBUG);
+    _CrtSetReportMode (_CRT_ASSERT, _CRTDBG_MODE_DEBUG);
+#  endif
+
+    // disable displaying the critical-error-handler
+    // and general-protection-fault message boxes
+    // windows.h included in thread.h
+    SetErrorMode (SEM_FAILCRITICALERRORS | SEM_NOGPFAULTERRORBOX);
+}
+
+#else
+
+void nodbg () { }
+
+#endif   // _WIN32

Propchange: stdcxx/trunk/etc/config/src/nodbg.h
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: stdcxx/trunk/etc/config/src/nodbg.h
------------------------------------------------------------------------------
    svn:keywords = Id



Mime
View raw message