summaryrefslogtreecommitdiff
path: root/sql/CMakeLists.txt
diff options
context:
space:
mode:
authorunknown <vvaintroub@wva.>2008-02-19 12:37:39 +0100
committerunknown <vvaintroub@wva.>2008-02-19 12:37:39 +0100
commit721d24124fee09a13da32cb49295fdfd45729592 (patch)
tree31944515f437dadb20aac5d217317572ec7950c4 /sql/CMakeLists.txt
parent32f59206764a448e1adf06e72ed69f7b4a907ce3 (diff)
downloadmariadb-git-721d24124fee09a13da32cb49295fdfd45729592.tar.gz
Bug#31745 - crash handler does not work on Windows
- Replace per-thread signal()'s with SetUnhandledExceptionFilter(). The only remaining signal() is for SIGABRT (default abort() handler in VS2005 is broken, i.e removes user exception filter) - remove MessageBox()'es from error handling code - Windows port for print_stacktrace() and write_core() - Cleanup, removed some unused functions sql/CMakeLists.txt: Implement stack tracing on and generating crash dumps on Windows sql/mysqld.cc: Correct signal handling on Windows. - For console events, like CTRL-C use SetConsoleCtrlHandler - For exceptions like access violation, use SetUnhandledExceptionFilter - For SIGABRT generate exception via __debugbreak() intrinsic if built with VS2005 and later , since default SIGABRT handler replaces unhandled exception filter specified by user - make provisions to debug exception filter, as it is not trivial (should be compiled with /DDEBUG_UNHANDLED_EXCEPTION_FILTER) sql/sql_parse.cc: Remove message box from windows signal handler. The only thread specific handler left is for SIGABRT, which is broken on VS2005 and later (user specified unhandled exception filter gets overwritten) sql/stacktrace.c: Stack tracing and generating crash dumps on Windows sql/stacktrace.h: Implement print_stacktrace and write_core on Windows
Diffstat (limited to 'sql/CMakeLists.txt')
-rwxr-xr-xsql/CMakeLists.txt2
1 files changed, 1 insertions, 1 deletions
diff --git a/sql/CMakeLists.txt b/sql/CMakeLists.txt
index 84b042a91b1..9ea9874c1b1 100755
--- a/sql/CMakeLists.txt
+++ b/sql/CMakeLists.txt
@@ -48,7 +48,7 @@ ENDIF(DISABLE_GRANT_OPTIONS)
ADD_EXECUTABLE(mysqld${MYSQLD_EXE_SUFFIX}
../sql-common/client.c derror.cc des_key_file.cc
- discover.cc ../libmysql/errmsg.c field.cc field_conv.cc
+ discover.cc ../libmysql/errmsg.c field.cc stacktrace.c stacktrace.h field_conv.cc
filesort.cc gstream.cc ha_blackhole.cc
ha_archive.cc ha_heap.cc ha_myisam.cc ha_myisammrg.cc
ha_innodb.cc ha_federated.cc ha_berkeley.cc