Commit a5294712 authored by rohitrao@chromium.org's avatar rohitrao@chromium.org

[Mac] Fix a crashing PreferencesWindowController unit test (only crashes in branded builds).

BUG=50471
TEST=PreferencesWindowController.SwitchToPage should not crash in official builds.
Review URL: http://codereview.chromium.org/2836073

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54160 0039d316-1c4b-4281-b951-d872f2087c98
parent aea7cab0
...@@ -392,8 +392,9 @@ class ManagedPrefsBannerState : public ManagedPrefsBannerBase { ...@@ -392,8 +392,9 @@ class ManagedPrefsBannerState : public ManagedPrefsBannerBase {
explicit ManagedPrefsBannerState(PreferencesWindowController* controller, explicit ManagedPrefsBannerState(PreferencesWindowController* controller,
OptionsPage page, OptionsPage page,
PrefService* local_state,
PrefService* prefs) PrefService* prefs)
: ManagedPrefsBannerBase(prefs, page), : ManagedPrefsBannerBase(local_state, prefs, page),
controller_(controller), controller_(controller),
page_(page) { } page_(page) { }
...@@ -1958,9 +1959,16 @@ const int kDisabledIndex = 1; ...@@ -1958,9 +1959,16 @@ const int kDisabledIndex = 1;
// preferences relevant to the given options |page|. // preferences relevant to the given options |page|.
- (void)initBannerStateForPage:(OptionsPage)page { - (void)initBannerStateForPage:(OptionsPage)page {
page = [self normalizePage:page]; page = [self normalizePage:page];
// During unit tests, there is no local state object, so we fall back to
// the prefs object (where we've explicitly registered this pref so we
// know it's there).
PrefService* local = g_browser_process->local_state();
if (!local)
local = prefs_;
bannerState_.reset( bannerState_.reset(
new PreferencesWindowControllerInternal::ManagedPrefsBannerState( new PreferencesWindowControllerInternal::ManagedPrefsBannerState(
self, page, prefs_)); self, page, local, prefs_));
} }
- (void)switchToPage:(OptionsPage)page animate:(BOOL)animate { - (void)switchToPage:(OptionsPage)page animate:(BOOL)animate {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment