Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in
(1257)

Issue 549002: Allow efficient and save "opt-out" from in-proc dump generation. (Closed)

Can't Edit
Can't Publish+Mail
Start Review
Created:
11 years, 5 months ago by Ivan Penkov
Modified:
11 years, 4 months ago
CC:
yukawa_google.com, google-breakpad-dev_googlegroups.com
Base URL:
http://google-breakpad.googlecode.com/svn/trunk/src/
Visibility:
Public.

Description

Allow efficient and safe "opt-out" from in-proc dump generation.  When
out-of-proc dump generation fails to initialize (fails to register with the
crash generation server), all ExceptionHandler constructors that we currently
have fail back to in-proc dump generation.

Apparently, there are Breakpad users who doesn't want to deal with in-proc dump
generation which leads to code like this:


   handler = new google_breakpad::ExceptionHandler(.....);
   if (!handler->IsOutOfProcess()) {
     delete g_handler;
     return false;
   }

This is inefficient and unsafe because the constructors and destructors of
ExceptionHandler do many things in in-proc dump generation mode.  For example,
they create a background thread and calls LoadLibrary in the constructor, and
waits for a thread termination in the destructor.

If needed, this "opt-out" behavior can be extended to Mac and Linux as well. 
For the time being it has only been requested for Windows.

Thanks,
-Ivan

Patch Set 1 #

Patch Set 2 : Removing an extra comment line that accidentally went in #

Total comments: 14

Patch Set 3 : Fixing indentation and typos in comments #

Unified diffs Side-by-side diffs Delta from patch set Stats Patch
M client/windows/crash_generation/crash_generation_client.cc View 1 2 1 chunk +4 lines, -0 lines 0 comments Download
M client/windows/handler/exception_handler.cc View 1 2 4 chunks +53 lines, -30 lines 0 comments Download
M client/windows/handler/exception_handler.h View 1 2 2 chunks +22 lines, -0 lines 0 comments Download
M client/windows/unittests/exception_handler_death_test.cc View 1 2 4 chunks +64 lines, -11 lines 0 comments Download

Messages

Total messages: 5
Ivan Penkov
ping ...
11 years, 4 months ago #1
Mark Mentovai
What do you mean “ping?” This was the first e-mail sent out from this code ...
11 years, 4 months ago #2
Ivan Penkov
Sorry about the "ping". I though I sent it earlier. Thanks, -Ivan On Thu, Apr ...
11 years, 4 months ago #3
Ivan Penkov
Done. https://breakpad.appspot.com/549002/diff/1005/client/windows/handler/exception_handler.cc File client/windows/handler/exception_handler.cc (right): https://breakpad.appspot.com/549002/diff/1005/client/windows/handler/exception_handler.cc#newcode184 client/windows/handler/exception_handler.cc:184: client.reset( On 2013/04/18 13:29:52, Mark Mentovai wrote: > ...
11 years, 4 months ago #4
Mark Mentovai
11 years, 4 months ago #5
So many constructors now!

LGTM
Sign in to reply to this message.

Powered by Google App Engine
RSS Feeds Recent Issues | This issue
This is Rietveld 1004:630ec63f810e-tainted