diff options
author | mark@chromium.org <mark@chromium.org@4c0a9323-5329-0410-9bdc-e9ce6186880e> | 2011-10-05 22:32:27 +0000 |
---|---|---|
committer | mark@chromium.org <mark@chromium.org@4c0a9323-5329-0410-9bdc-e9ce6186880e> | 2011-10-05 22:32:27 +0000 |
commit | 405bb7aff734100b8d25adfd93d42d54a778b9a4 (patch) | |
tree | 87825db11db4f56cc19cb9ae74cc35cfa2ac8a92 /src/client/mac/crash_generation | |
parent | Ensure crash reports will be uploaded on the Mac. (diff) | |
download | breakpad-405bb7aff734100b8d25adfd93d42d54a778b9a4.tar.xz |
Address review comments from r843 (http://breakpad.appspot.com/307001)
Review URL: http://breakpad.appspot.com/308001
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@844 4c0a9323-5329-0410-9bdc-e9ce6186880e
Diffstat (limited to 'src/client/mac/crash_generation')
-rw-r--r-- | src/client/mac/crash_generation/Inspector.h | 2 | ||||
-rw-r--r-- | src/client/mac/crash_generation/Inspector.mm | 21 |
2 files changed, 14 insertions, 9 deletions
diff --git a/src/client/mac/crash_generation/Inspector.h b/src/client/mac/crash_generation/Inspector.h index e6705819..4148eac2 100644 --- a/src/client/mac/crash_generation/Inspector.h +++ b/src/client/mac/crash_generation/Inspector.h @@ -175,7 +175,7 @@ class Inspector { // (ensuring that children like the sender will inherit it), and saves the // subset in bootstrap_subset_port_ for use by ServiceCheckIn and // ServiceCheckOut. - void ResetBootstrapPort(); + kern_return_t ResetBootstrapPort(); kern_return_t ServiceCheckIn(const char *receive_port_name); kern_return_t ServiceCheckOut(const char *receive_port_name); diff --git a/src/client/mac/crash_generation/Inspector.mm b/src/client/mac/crash_generation/Inspector.mm index 77187082..47d3e7b7 100644 --- a/src/client/mac/crash_generation/Inspector.mm +++ b/src/client/mac/crash_generation/Inspector.mm @@ -203,9 +203,12 @@ void ConfigFile::WriteFile(const SimpleStringDictionary *configurationParameters //============================================================================= void Inspector::Inspect(const char *receive_port_name) { - ResetBootstrapPort(); + kern_return_t result = ResetBootstrapPort(); + if (result != KERN_SUCCESS) { + return; + } - kern_return_t result = ServiceCheckIn(receive_port_name); + result = ServiceCheckIn(receive_port_name); if (result == KERN_SUCCESS) { result = ReadMessages(); @@ -243,7 +246,7 @@ void Inspector::Inspect(const char *receive_port_name) { } //============================================================================= -void Inspector::ResetBootstrapPort() { +kern_return_t Inspector::ResetBootstrapPort() { // A reasonable default, in case anything fails. bootstrap_subset_port_ = bootstrap_port; @@ -254,29 +257,31 @@ void Inspector::ResetBootstrapPort() { if (kr != KERN_SUCCESS) { NSLog(@"ResetBootstrapPort: task_get_bootstrap_port failed: %s (%d)", mach_error_string(kr), kr); - return; + return kr; } mach_port_t bootstrap_parent_port; kr = bootstrap_look_up(bootstrap_subset_port_, - "BootstrapParentPort", + const_cast<char*>(BREAKPAD_BOOTSTRAP_PARENT_PORT), &bootstrap_parent_port); - if (kr != KERN_SUCCESS) { + if (kr != BOOTSTRAP_SUCCESS) { NSLog(@"ResetBootstrapPort: bootstrap_look_up failed: %s (%d)", bootstrap_strerror(kr), kr); - return; + return kr; } kr = task_set_bootstrap_port(self_task, bootstrap_parent_port); if (kr != KERN_SUCCESS) { NSLog(@"ResetBootstrapPort: task_set_bootstrap_port failed: %s (%d)", mach_error_string(kr), kr); - return; + return kr; } // Some things access the bootstrap port through this global variable // instead of calling task_get_bootstrap_port. bootstrap_port = bootstrap_parent_port; + + return KERN_SUCCESS; } //============================================================================= |