diff options
author | nealsid <nealsid@4c0a9323-5329-0410-9bdc-e9ce6186880e> | 2009-04-06 00:25:29 +0000 |
---|---|---|
committer | nealsid <nealsid@4c0a9323-5329-0410-9bdc-e9ce6186880e> | 2009-04-06 00:25:29 +0000 |
commit | a3d4c973369987e14cc0c05964e288ea0eac11dc (patch) | |
tree | f53b1acc20ae0a32a8b2a5cc96c4a0d90e101368 /src/client/mac/Framework/Breakpad.mm | |
parent | Open sourcing the Breakpad framework from Google. (diff) | |
download | breakpad-a3d4c973369987e14cc0c05964e288ea0eac11dc.tar.xz |
Incorporate feedback from first Breakpad integration.
This upload fixes five issues:
1) Preston's email was hardcoded in the xib :-(
2) Changed from xib to NIB to facilitate Tiger building
3) Changed the logs location to be user specifiable by BreakpadMinidumpLocation
key, or ~/Library/Breakpad/<BREAKPAD_PRODUCT> by default
4) Fixed GTM Defines problem in order to build on Tiger
5) Also set CFBundleIcon in the sender program correctly, and updated plist, and
renamed ReporterIcons to crash_report_sendER.ICNS. However the rietveld upload
script doesn't appear to pick up renamed files correctly, so that file doesn't
show up in the patch upload.
Also various comments were updated for accuracy.
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@323 4c0a9323-5329-0410-9bdc-e9ce6186880e
Diffstat (limited to 'src/client/mac/Framework/Breakpad.mm')
-rw-r--r-- | src/client/mac/Framework/Breakpad.mm | 23 |
1 files changed, 13 insertions, 10 deletions
diff --git a/src/client/mac/Framework/Breakpad.mm b/src/client/mac/Framework/Breakpad.mm index 52301c72..9de0a94b 100644 --- a/src/client/mac/Framework/Breakpad.mm +++ b/src/client/mac/Framework/Breakpad.mm @@ -407,7 +407,9 @@ bool Breakpad::ExtractParameters(NSDictionary *parameters) { [parameters objectForKey:@BREAKPAD_REQUEST_COMMENTS]; NSString *vendor = [parameters objectForKey:@BREAKPAD_VENDOR]; - + NSString *dumpSubdirectory = + [parameters objectForKey:@BREAKPAD_DUMP_DIRECTORY]; + // If these two are not already set(skipConfirm and sendAndExit can // come from user defaults and take priority) if (!skipConfirm) { @@ -509,9 +511,14 @@ bool Breakpad::ExtractParameters(NSDictionary *parameters) { return false; } - // The product and version are required values + if (!dumpSubdirectory) { + dumpSubdirectory = @""; + } + + // The product and version are required values. if (![product length] || ![version length]) { - DEBUGLOG(stderr, "Missing required product and/or version keys\n"); + DEBUGLOG(stderr, + "Missing required product or version subdirectory keys\n"); return false; } @@ -537,7 +544,9 @@ bool Breakpad::ExtractParameters(NSDictionary *parameters) { [requestUserText UTF8String]); dictionary.SetKeyValue(BREAKPAD_VENDOR, [vendor UTF8String]); - + dictionary.SetKeyValue(BREAKPAD_DUMP_DIRECTORY, + [dumpSubdirectory UTF8String]); + if (logFilePaths) { char logFileKey[255]; for(unsigned int i = 0; i < [logFilePaths count]; i++) { @@ -550,12 +559,6 @@ bool Breakpad::ExtractParameters(NSDictionary *parameters) { dictionary.SetKeyValue(BREAKPAD_EMAIL, [reportEmail UTF8String]); } -#if 0 // for testing - BreakpadSetKeyValue(this, @"UserKey1", @"User Value 1"); - BreakpadSetKeyValue(this, @"UserKey2", @"User Value 2"); - BreakpadSetKeyValue(this, @"UserKey3", @"User Value 3"); - BreakpadSetKeyValue(this, @"UserKey4", @"User Value 4"); -#endif return true; } |