]> git.cworth.org Git - apitrace/blobdiff - common/os_posix.cpp
common: dump backtrace on signals
[apitrace] / common / os_posix.cpp
index 967d12eba4116ddccd8f1c3389f165c7c8edc4c0..5d6bffe5dcdab406a23624692b965e1d0730305b 100644 (file)
@@ -56,6 +56,7 @@
 
 #include "os.hpp"
 #include "os_string.hpp"
+#include "os_backtrace.hpp"
 
 
 namespace os {
@@ -243,11 +244,11 @@ signalHandler(int sig, siginfo_t *info, void *context)
     if (recursion_count) {
         log("apitrace: warning: recursion handling signal %i\n", sig);
     } else {
-        if (gCallback) {
-            ++recursion_count;
+        ++recursion_count;
+        if (gCallback)
             gCallback();
-            --recursion_count;
-        }
+        os::dump_backtrace();
+        --recursion_count;
     }
 
     struct sigaction *old_action;