From a7eda3017c849097bdcb1581ecf55cf95e1bb2eb Mon Sep 17 00:00:00 2001 From: "danm-moz%comcast.net" Date: Mon, 1 Mar 2004 03:13:52 +0000 Subject: [PATCH] in your preferences, set the milestone to 'ignore' and lose the annoying temporary homepage hijack Mozilla does at each milestone. bug 102313 r=jag^2 git-svn-id: svn://10.0.0.236/trunk@153396 18797224-902f-48f8-a5cc-f745e15eee43 --- .../xpfe/browser/src/nsBrowserInstance.cpp | 25 +++++++++++-------- 1 file changed, 14 insertions(+), 11 deletions(-) diff --git a/mozilla/xpfe/browser/src/nsBrowserInstance.cpp b/mozilla/xpfe/browser/src/nsBrowserInstance.cpp index 605d7316546..442fce35b7d 100644 --- a/mozilla/xpfe/browser/src/nsBrowserInstance.cpp +++ b/mozilla/xpfe/browser/src/nsBrowserInstance.cpp @@ -131,6 +131,8 @@ static int APP_DEBUG = 0; // Set to 1 in debugger to turn on debugging. #define PREF_BROWSER_STARTUP_PAGE "browser.startup.page" #define PREF_BROWSER_STARTUP_HOMEPAGE "browser.startup.homepage" +const char *kIgnoreOverrideMilestone = "ignore"; + //***************************************************************************** //*** PageCycler: Object Management //***************************************************************************** @@ -676,25 +678,26 @@ PRBool nsBrowserContentHandler::NeedHomepageOverride(nsIPref *aPrefService) { NS_ASSERTION(aPrefService, "Null pointer to prefs service!"); + // get saved milestone from user's prefs + nsXPIDLCString savedMilestone; + aPrefService->GetCharPref(PREF_HOMEPAGE_OVERRIDE_MSTONE, + getter_Copies(savedMilestone)); + // Mozilla never saves this value, but a fed-up advanced user might + if (savedMilestone.Equals(kIgnoreOverrideMilestone)) + return PR_FALSE; + // get browser's current milestone - nsresult rv; nsCOMPtr httpHandler( - do_GetService("@mozilla.org/network/protocol;1?name=http", &rv)); - if (NS_FAILED(rv)) + do_GetService("@mozilla.org/network/protocol;1?name=http")); + if (!httpHandler) return PR_TRUE; + nsCAutoString currMilestone; httpHandler->GetMisc(currMilestone); - // get saved milestone from user's prefs - nsXPIDLCString savedMilestone; - rv = aPrefService->GetCharPref(PREF_HOMEPAGE_OVERRIDE_MSTONE, - getter_Copies(savedMilestone)); - // failed to get pref -or- saved milestone older than current milestone, // write out known current milestone and show URL this time - if (NS_FAILED(rv) || - !(currMilestone.Equals(savedMilestone))) - { + if (!(currMilestone.Equals(savedMilestone))) { // update milestone in "homepage override" pref aPrefService->SetCharPref(PREF_HOMEPAGE_OVERRIDE_MSTONE, currMilestone.get());