From 06cede988b4d15b4d6b7e759fda676bfe3455682 Mon Sep 17 00:00:00 2001 From: "ted.mielczarek" Date: Fri, 11 Nov 2011 19:05:51 +0000 Subject: Allow CrashGenerationClient to request that a dump of the parent process be written. A=Jim Mathies R=ted at https://bugzilla.mozilla.org/show_bug.cgi?id=679238 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@883 4c0a9323-5329-0410-9bdc-e9ce6186880e --- src/client/windows/handler/exception_handler.cc | 6 ++++++ src/client/windows/handler/exception_handler.h | 6 ++++++ 2 files changed, 12 insertions(+) (limited to 'src/client/windows/handler') diff --git a/src/client/windows/handler/exception_handler.cc b/src/client/windows/handler/exception_handler.cc index ec5397dc..fc55ca72 100644 --- a/src/client/windows/handler/exception_handler.cc +++ b/src/client/windows/handler/exception_handler.cc @@ -704,6 +704,12 @@ bool ExceptionHandler::WriteMinidump(const wstring &dump_path, return handler.WriteMinidump(); } +bool ExceptionHandler::RequestMinidumpForParent() { + if (!IsOutOfProcess()) + return false; + return crash_generation_client_->RequestParentDump(); +} + bool ExceptionHandler::WriteMinidumpWithException( DWORD requesting_thread_id, EXCEPTION_POINTERS* exinfo, diff --git a/src/client/windows/handler/exception_handler.h b/src/client/windows/handler/exception_handler.h index 2c2e7b76..7b2da3f3 100644 --- a/src/client/windows/handler/exception_handler.h +++ b/src/client/windows/handler/exception_handler.h @@ -190,6 +190,12 @@ class ExceptionHandler { static bool WriteMinidump(const wstring &dump_path, MinidumpCallback callback, void* callback_context); + // Requests a minidump of the server be generated and waits for completion. + // This can be used to capture the execution state of parent process + // independent of a crash on either side of the connection. Only valid for + // out-of-process clients. + bool RequestMinidumpForParent(); + // Get the thread ID of the thread requesting the dump (either the exception // thread or any other thread that called WriteMinidump directly). This // may be useful if you want to include additional thread state in your -- cgit v1.2.1