2015-12-07 11:11:05 +01:00
|
|
|
--- breakpad/src/client/linux/handler/exception_handler.cc.orig 2015-12-06 09:59:55.554536646 +0100
|
|
|
|
+++ breakpad/src/client/linux/handler/exception_handler.cc 2015-12-06 10:01:16.818238035 +0100
|
|
|
|
@@ -477,7 +477,9 @@ bool ExceptionHandler::SimulateSignalDel
|
2015-11-27 17:02:40 +01:00
|
|
|
siginfo.si_code = SI_USER;
|
|
|
|
siginfo.si_pid = getpid();
|
|
|
|
struct ucontext context;
|
2015-12-07 11:11:05 +01:00
|
|
|
+#if defined(__GLIBC__)
|
|
|
|
getcontext(&context);
|
|
|
|
+#endif
|
2015-11-27 17:02:40 +01:00
|
|
|
return HandleSignal(sig, &siginfo, &context);
|
|
|
|
}
|
|
|
|
|
2015-12-07 11:11:05 +01:00
|
|
|
@@ -647,9 +649,14 @@ bool ExceptionHandler::WriteMinidump() {
|
2015-11-27 17:02:40 +01:00
|
|
|
sys_prctl(PR_SET_DUMPABLE, 1, 0, 0, 0);
|
|
|
|
|
|
|
|
CrashContext context;
|
2015-12-07 11:11:05 +01:00
|
|
|
+
|
|
|
|
+#if defined(__GLIBC__)
|
|
|
|
int getcontext_result = getcontext(&context.context);
|
|
|
|
if (getcontext_result)
|
2015-11-27 17:02:40 +01:00
|
|
|
return false;
|
2015-12-07 11:11:05 +01:00
|
|
|
+#else
|
|
|
|
+ return false;
|
|
|
|
+#endif
|
2015-11-27 17:02:40 +01:00
|
|
|
|
|
|
|
#if defined(__i386__)
|
2015-12-07 11:11:05 +01:00
|
|
|
// In CPUFillFromUContext in minidumpwriter.cc the stack pointer is retrieved
|