summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAaron <aaron@10gen.com>2010-04-08 12:58:36 -0700
committerAaron <aaron@10gen.com>2010-04-08 12:58:36 -0700
commit5a235ba8f6477b8c20a943303a6c9c002e1505a5 (patch)
treec741c3abb7ec39cb379da3caafebba722e5c5ca3
parentc8c9e0e1943afc9c9e91a35c204e9c7bb42f1ee3 (diff)
downloadmongo-5a235ba8f6477b8c20a943303a6c9c002e1505a5.tar.gz
SERVER-988 debug
-rw-r--r--db/db.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/db/db.cpp b/db/db.cpp
index d530bd0ec8a..3484c4fa88d 100644
--- a/db/db.cpp
+++ b/db/db.cpp
@@ -1127,11 +1127,18 @@ BOOL CtrlHandler( DWORD fdwCtrlType )
}
}
+ void myPurecallHandler() {
+ rawOut( "pure virtual method called, printing stack:\n" );
+ printStackTrace();
+ abort();
+ }
+
void setupSignals() {
if( SetConsoleCtrlHandler( (PHANDLER_ROUTINE) CtrlHandler, TRUE ) )
;
else
massert( 10297 , "Couldn't register Windows Ctrl-C handler", false);
+ _set_purecall_handler( myPurecallHandler );
}
#endif