diff options
Diffstat (limited to 'chromium/patches/035-breakpad-no-getcontext.patch')
| -rw-r--r-- | chromium/patches/035-breakpad-no-getcontext.patch | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/chromium/patches/035-breakpad-no-getcontext.patch b/chromium/patches/035-breakpad-no-getcontext.patch new file mode 100644 index 0000000..f9bc2e0 --- /dev/null +++ b/chromium/patches/035-breakpad-no-getcontext.patch | |||
| @@ -0,0 +1,27 @@ | |||
| 1 | --- a/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc 2015-12-06 09:59:55.554536646 +0100 | ||
| 2 | +++ b/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc 2015-12-06 10:01:16.818238035 +0100 | ||
| 3 | @@ -477,7 +477,9 @@ bool ExceptionHandler::SimulateSignalDel | ||
| 4 | siginfo.si_code = SI_USER; | ||
| 5 | siginfo.si_pid = getpid(); | ||
| 6 | ucontext_t context; | ||
| 7 | +#if defined(__GLIBC__) | ||
| 8 | getcontext(&context); | ||
| 9 | +#endif | ||
| 10 | return HandleSignal(sig, &siginfo, &context); | ||
| 11 | } | ||
| 12 | |||
| 13 | @@ -647,9 +649,14 @@ bool ExceptionHandler::WriteMinidump() { | ||
| 14 | sys_prctl(PR_SET_DUMPABLE, 1, 0, 0, 0); | ||
| 15 | |||
| 16 | CrashContext context; | ||
| 17 | + | ||
| 18 | +#if defined(__GLIBC__) | ||
| 19 | int getcontext_result = getcontext(&context.context); | ||
| 20 | if (getcontext_result) | ||
| 21 | return false; | ||
| 22 | +#else | ||
| 23 | + return false; | ||
| 24 | +#endif | ||
| 25 | |||
| 26 | #if defined(__i386__) | ||
| 27 | // In CPUFillFromUContext in minidumpwriter.cc the stack pointer is retrieved | ||