aboutsummaryrefslogtreecommitdiff
path: root/src/client/ios
diff options
context:
space:
mode:
Diffstat (limited to 'src/client/ios')
-rw-r--r--src/client/ios/Breakpad.mm14
1 files changed, 13 insertions, 1 deletions
diff --git a/src/client/ios/Breakpad.mm b/src/client/ios/Breakpad.mm
index 2d8ba61e..2b61bbe3 100644
--- a/src/client/ios/Breakpad.mm
+++ b/src/client/ios/Breakpad.mm
@@ -161,6 +161,7 @@ class Breakpad {
NSArray *CrashReportsToUpload();
NSString *NextCrashReportToUpload();
NSDictionary *NextCrashReportConfiguration();
+ NSDictionary *FixedUpCrashReportConfiguration(NSDictionary *configuration);
NSDate *DateOfMostRecentCrashReport();
void UploadNextReport(NSDictionary *server_parameters);
void UploadReportWithConfiguration(NSDictionary *configuration,
@@ -466,7 +467,18 @@ NSString *Breakpad::NextCrashReportToUpload() {
//=============================================================================
NSDictionary *Breakpad::NextCrashReportConfiguration() {
- return [Uploader readConfigurationDataFromFile:NextCrashReportToUpload()];
+ NSDictionary *configuration = [Uploader readConfigurationDataFromFile:NextCrashReportToUpload()];
+ return FixedUpCrashReportConfiguration(configuration);
+}
+
+//=============================================================================
+NSDictionary *Breakpad::FixedUpCrashReportConfiguration(NSDictionary *configuration) {
+ NSMutableDictionary *fixedConfiguration = [[configuration mutableCopy] autorelease];
+ // kReporterMinidumpDirectoryKey can become stale because the app's data container path includes
+ // an UUID that is not guaranteed to stay the same over time.
+ [fixedConfiguration setObject:KeyValue(@BREAKPAD_DUMP_DIRECTORY)
+ forKey:@kReporterMinidumpDirectoryKey];
+ return fixedConfiguration;
}
//=============================================================================