diff --git a/mozilla/camino/src/extensions/NSWorkspace+Utils.m b/mozilla/camino/src/extensions/NSWorkspace+Utils.m index b09d4cfb71b..e3d052cef2a 100644 --- a/mozilla/camino/src/extensions/NSWorkspace+Utils.m +++ b/mozilla/camino/src/extensions/NSWorkspace+Utils.m @@ -67,29 +67,34 @@ } - (NSString*)defaultBrowserIdentifier -{ - return [self identifierForBundle:[self defaultBrowserURL]]; -} - -- (NSString*)defaultFeedViewerIdentifier -{ - return [self identifierForBundle:[self defaultFeedViewerURL]]; -} - -- (NSURL*)defaultBrowserURL { NSString* defaultBundleId = [(NSString*)LSCopyDefaultHandlerForURLScheme(CFSTR("http")) autorelease]; // Sometimes LaunchServices likes to pretend there's no default browser. // If that happens, we'll assume it's probably Safari. if (!defaultBundleId) defaultBundleId = @"com.apple.safari"; - return [self urlOfApplicationWithIdentifier:defaultBundleId]; + return defaultBundleId; +} + +- (NSString*)defaultFeedViewerIdentifier +{ + return [(NSString*)LSCopyDefaultHandlerForURLScheme(CFSTR("feed")) autorelease]; +} + +- (NSURL*)defaultBrowserURL +{ + NSString* defaultBundleId = [self defaultBrowserIdentifier]; + if (defaultBundleId) + return [self urlOfApplicationWithIdentifier:defaultBundleId]; + return nil; } - (NSURL*)defaultFeedViewerURL { - NSString* defaultBundleId = [(NSString*)LSCopyDefaultHandlerForURLScheme(CFSTR("feed")) autorelease]; - return [self urlOfApplicationWithIdentifier:defaultBundleId]; + NSString* defaultBundleId = [self defaultFeedViewerIdentifier]; + if (defaultBundleId) + return [self urlOfApplicationWithIdentifier:defaultBundleId]; + return nil; } - (void)setDefaultBrowserWithIdentifier:(NSString*)bundleID