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

Issue 307001: Ensure crash reports will be uploaded on the Mac. (Closed)

Can't Edit
Can't Publish+Mail
Start Review
Created:
12 years, 6 months ago by Mark Mentovai
Modified:
12 years, 6 months ago
Reviewers:
mochalatte
CC:
google-breakpad-dev_googlegroups.com, shess
Base URL:
http://google-breakpad.googlecode.com/svn/trunk/
Visibility:
Public.

Description

Ensure crash reports will be uploaded on the Mac.

Regression from Breakpad r842 (Chromium r103778) - browser crash reports were
uploaded, but renderer crash reports were not. Messages such as these may have
been logged:

com.apple.launchd.peruser.x[y] could not lookup DNS configuration info
service: (ipc/send) invalid destination port
com.apple.launchd.peruser.x[y] Breakpad Reporter: Send Error: Error
Domain=NSURLErrorDomain Code=-1009 UserInfo=z "This computer’s Internet
connection appears to be offline." Underlying Error=(Error
Domain=kCFErrorDomainCFNetwork Code=-1009 UserInfo=w "This computer’s Internet
connection appears to be offline.")

When OnDemandServer establishes the bootstrap subset, it will now register the
parent bootstrap port in the subset namespace so that the Inspector can
recover this port and switch to it. The Sender, launched by the Inspector,
relies on the bootstrap port being set properly.

BUG=chromium:99252
TEST=All test cases from Chromium r103778 (bug chromium:28547) plus:
     about:crash should generate a crash report which should be uploaded,
     provided that throttling is not in effect. Remove or edit
     ~/Library/Preferences/com.Breakpad.crash_report_sender.plist to defeat
     throttling. Also verify that about:inducebrowsercrashforrealz works.

Committed r843

Patch Set 1 #

Patch Set 2 : '' #

Total comments: 2
Unified diffs Side-by-side diffs Delta from patch set Stats Patch
M src/client/mac/Framework/OnDemandServer.mm View 1 chunk +15 lines, -0 lines 1 comment Download
M src/client/mac/crash_generation/Inspector.h View 3 chunks +18 lines, -0 lines 0 comments Download
M src/client/mac/crash_generation/Inspector.mm View 3 chunks +41 lines, -2 lines 1 comment Download

Messages

Total messages: 3
Mark Mentovai
12 years, 6 months ago #1
Mark Mentovai
(TBR)
12 years, 6 months ago #2
mochalatte
12 years, 6 months ago #3
nice work, Mark - this is tricky stuff

http://breakpad.appspot.com/307001/diff/3001/1004
File src/client/mac/Framework/OnDemandServer.mm (right):

http://breakpad.appspot.com/307001/diff/3001/1004#newcode97
Line 97: const_cast<char*>("BootstrapParentPort"),
You might want to call this something more specific to Breakpad besides
BootstrapParentPort and also move the name to a constant in a header file

http://breakpad.appspot.com/307001/diff/3001/1006
File src/client/mac/crash_generation/Inspector.mm (right):

http://breakpad.appspot.com/307001/diff/3001/1006#newcode206
Line 206: ResetBootstrapPort();
If anything in ResetBootstrapPort fails, you continue - if I understand this
correctly, an error in ResetBootstrapPort means that uploads won't work
correctly, since the parent bootstrap port isn't accessible in the sender.  I
think errors should be propogated and Inspect() should fail fast
Sign in to reply to this message.

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