summaryrefslogtreecommitdiffstats
path: root/o3d
diff options
context:
space:
mode:
authormilligan@google.com <milligan@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2011-03-09 01:05:49 +0000
committermilligan@google.com <milligan@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2011-03-09 01:05:49 +0000
commit9588a0b51dcc7c1e98b54faa2e46d99d50b2fde8 (patch)
treebb327f320b1d0c18f7525afb76c7f0bd85494496 /o3d
parentc9963bdcf0c56a2cc83169095d3f59dff45b72d0 (diff)
downloadchromium_src-9588a0b51dcc7c1e98b54faa2e46d99d50b2fde8.zip
chromium_src-9588a0b51dcc7c1e98b54faa2e46d99d50b2fde8.tar.gz
chromium_src-9588a0b51dcc7c1e98b54faa2e46d99d50b2fde8.tar.bz2
Work around the multiple breakpad issue by never
initializing o3d's breakpad if loaded in the Chrome Helper process. Hopefully this is temporary and we will revert once we get breakpad working with multiple instances. Review URL: http://codereview.chromium.org/6639006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@77390 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'o3d')
-rw-r--r--o3d/plugin/mac/plugin_mac.mm9
1 files changed, 8 insertions, 1 deletions
diff --git a/o3d/plugin/mac/plugin_mac.mm b/o3d/plugin/mac/plugin_mac.mm
index 8bd414a..604bcfe 100644
--- a/o3d/plugin/mac/plugin_mac.mm
+++ b/o3d/plugin/mac/plugin_mac.mm
@@ -314,6 +314,13 @@ void RenderTimer::TimerCallback(CFRunLoopTimerRef timer, void* info) {
#pragma mark ____BREAKPAD
+bool IsBrowserChrome() {
+ NSString *processName = [[NSProcessInfo processInfo] processName];
+ NSString *chromeString = @"Google Chrome Helper";
+ bool areEqual = [processName isEqualToString:chromeString];
+ return areEqual;
+}
+
bool ExceptionCallback(int exception_type,
int exception_code,
mach_port_t crashing_thread,
@@ -322,7 +329,7 @@ bool ExceptionCallback(int exception_type,
}
void InitializeBreakpad() {
- if (!gBreakpadRef) {
+ if (!gBreakpadRef && !IsBrowserChrome()) {
NSBundle* bundle = [NSBundle bundleWithIdentifier:@"com.google.o3d"];
NSDictionary* info = [bundle infoDictionary];