]> git.saurik.com Git - wxWidgets.git/commitdiff
define WXDEBUG_NEW to use special VC++-specific new version too (closes 1386286)
authorVadim Zeitlin <vadim@wxwidgets.org>
Tue, 24 Oct 2006 23:19:12 +0000 (23:19 +0000)
committerVadim Zeitlin <vadim@wxwidgets.org>
Tue, 24 Oct 2006 23:19:12 +0000 (23:19 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@42363 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

include/wx/msw/msvcrt.h
include/wx/object.h

index 0b08fc2f12a7b21544055b8749f8ab730a80ac30..c5afed22c73b31d22ba8f6a871e57405a04ff1f9 100644 (file)
 
     #include <crtdbg.h>
 
+    #undef WXDEBUG_NEW
+    #define WXDEBUG_NEW new(_NORMAL_BLOCK, __FILE__, __LINE__)
+
     // this define works around a bug with inline declarations of new, see
     //
     //      http://support.microsoft.com/support/kb/articles/Q140/8/58.asp
     //
     // for the details
-    #define new  new( _NORMAL_BLOCK, __FILE__, __LINE__)
+    #define new  WXDEBUG_NEW
 
     #define wxCrtSetDbgFlag(flag) \
         _CrtSetDbgFlag(_CrtSetDbgFlag(_CRTDBG_REPORT_FLAG) | (flag))
index dfb88a48c62f946e4c7fe80caeeb14b8b0483669..c268f677b4598cd7d6f45ba48c756168dea0c13c 100644 (file)
@@ -540,23 +540,24 @@ private :
 // more debugging macros
 // ----------------------------------------------------------------------------
 
-#ifdef __WXDEBUG__
-    #ifndef WXDEBUG_NEW
-        #define WXDEBUG_NEW new(__TFILE__,__LINE__)
-    #endif
-#else // !__WXDEBUG__
-    #define WXDEBUG_NEW new
-#endif
-
 // Redefine new to be the debugging version. This doesn't work with all
 // compilers, in which case you need to use WXDEBUG_NEW explicitly if you wish
 // to use the debugging version.
 
-#if defined(__WXDEBUG__) && wxUSE_GLOBAL_MEMORY_OPERATORS && wxUSE_DEBUG_NEW_ALWAYS
-    #define new new(__TFILE__,__LINE__)
-#elif (defined(__WXDEBUG__) && defined(__VISUALC__) && !wxUSE_GLOBAL_MEMORY_OPERATORS && wxUSE_DEBUG_NEW_ALWAYS)
-    // Including this file redefines new and allows leak reports to contain line numbers
-    #include "wx/msw/msvcrt.h"
-#endif
+#ifdef __WXDEBUG__
+    #define WXDEBUG_NEW new(__TFILE__,__LINE__)
+
+    #if wxUSE_DEBUG_NEW_ALWAYS
+        #if wxUSE_GLOBAL_MEMORY_OPERATORS
+            #define new WXDEBUG_NEW
+        #elif defined(__VISUALC__)
+            // Including this file redefines new and allows leak reports to
+            // contain line numbers
+            #include "wx/msw/msvcrt.h"
+        #endif
+    #endif // wxUSE_DEBUG_NEW_ALWAYS
+#else // !__WXDEBUG__
+    #define WXDEBUG_NEW new
+#endif // __WXDEBUG__/!__WXDEBUG__
 
 #endif // _WX_OBJECTH__