mirror of
https://git.suyu.dev/suyu/breakpad.git
synced 2025-12-25 16:54:43 +01:00
Issue 182: linux handler doesn't have sigcontext if called from a previous signal handler. r=mento / Liu Li
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@188 4c0a9323-5329-0410-9bdc-e9ce6186880e
This commit is contained in:
parent
2e86dfe705
commit
21d58c7281
7 changed files with 87 additions and 25 deletions
|
|
@ -132,7 +132,7 @@ class ExceptionHandler {
|
|||
// execution state independently of a crash. Returns true on success.
|
||||
bool WriteMinidump();
|
||||
|
||||
// Convenience form of WriteMinidump which does not require an
|
||||
// Convenience form of WriteMinidump which does not require an
|
||||
// ExceptionHandler instance.
|
||||
static bool WriteMinidump(const string &dump_path,
|
||||
MinidumpCallback callback,
|
||||
|
|
@ -151,7 +151,14 @@ class ExceptionHandler {
|
|||
// Signal handler.
|
||||
static void HandleException(int signo);
|
||||
|
||||
bool InternalWriteMinidump(int signo, const struct sigcontext *sig_ctx);
|
||||
// If called from a signal handler, sighandler_ebp is the ebp of
|
||||
// that signal handler's frame, and sig_ctx is an out parameter
|
||||
// that will be set to point at the sigcontext that was placed
|
||||
// on the stack by the kernel. You can pass zero and NULL
|
||||
// for the second and third parameters if you are not calling
|
||||
// this from a signal handler.
|
||||
bool InternalWriteMinidump(int signo, uintptr_t sighandler_ebp,
|
||||
struct sigcontext **sig_ctx);
|
||||
|
||||
private:
|
||||
FilterCallback filter_;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue