Closed Bug 780118 Opened 12 years ago Closed 4 years ago

Firefox asks for default browser although it already is

Categories

(Firefox :: Shell Integration, defect, P3)

x86
Windows XP
defect

Tracking

()

RESOLVED WORKSFORME
Tracking Status
firefox17 - ---

People

(Reporter: hartnegg, Unassigned)

References

Details

(Keywords: regression)

Attachments

(1 file)

User Agent: Mozilla/5.0 (Windows NT 5.1; rv:10.0.6) Gecko/20100101 Firefox/10.0.6
Build ID: 20120713125334

Steps to reproduce:

I try to deploy Firefox to many PCs running Windows-XP by creating the program path and setting the required registry keys in HKLM. Internnet Shortcuts on the desktop display the nightly icon. Clicking on them starts firefox.exe.



Actual results:

When Firefox is started, it asks for permission to set itself as default browser. If the user clicks yes, it sets a few registry keys in HKCU.


Expected results:

There should be a way to disable this question. Firefox 10 ESR didn't do it.
See Also: → 699803
The new behaviour probably started with version 14.

The additional registry keys, that Firefox wants to set, are in
HKCU\software\clients\StartMenuInternet
HKCU\software\classes

The value, that it checks for presence, seems to be
HKCU\software\classes\FirefoxHTML

In version 10 it was sufficient to set keys in HKLM.
Were they silently copied to HKCU?

For corporate deployment it's important that Firefox can be automatically set as default browser.

This is probably a workaround:
lockPref("browser.shell.checkDefaultBrowser", false);
Confirmed, the same problem updating PCs to version 14.
Status: UNCONFIRMED → NEW
Ever confirmed: true
Tracked this for 17 but realize now that this may have been around for quite some time.  Adding qawanted to help find a regression range but removing tracking for 17, renominate if this looks like a recent regression.
Is this still reproducible for anyone?
Keywords: qawanted
(In reply to Anthony Hughes, Mozilla QA (:ashughes) from comment #5)
> Is this still reproducible for anyone?

Yes!

Steps to reproduce:
- installed Firefox 24 esr in XP as Admin
- executed "helper.exe /SetAsDefaultAppGlobal"
- created new userid and logged in as that user
- created empty file with name "test.html" on desktop there
  (making sure it's really test.html, not test.html.txt)

Observations:
- Windows shows the Firefox icon for the file "test.html"
- The start menu lists Firefox as Web Browser.
- When I double-click the file, this starts Firefox.

It seems that Firefox *is* the default-browser.

But then Firefox says that it's not the default browser,
and asks for permission to set itself as default.
I'm not able to reproduce this following your steps.

1. Log into Windows XP as Administrator
2. Install Firefox 24ESR
3. Execute "helper.exe /SetAsDefaultAppGlobal"
4. Create a new user called Howard and add him to the Users group only
5. Log out and log in as Howard
6. Create a empty file on the desktop called test.html
> test.html shows an IE logo to indicate program default
7. Double click test.html
> test.html opens with IE

8. Close IE and start Firefox
> Prompted to set Firefox as default
9. Click 'Yes'
10. Close Firefox
> test.html icon shows the Firefox logo to indicate the program default
11. Double click test.html
> test.html opens with Firefox

Can you please clarify your steps to reproduce?
Keywords: steps-wanted
(In reply to Anthony Hughes, Mozilla QA (:ashughes) from comment #7)
> I'm not able to reproduce this following your steps.
> 
> 1. Log into Windows XP as Administrator
> 2. Install Firefox 24ESR
> 3. Execute "helper.exe /SetAsDefaultAppGlobal"
> 4. Create a new user called Howard and add him to the Users group only
> 5. Log out and log in as Howard
> 6. Create a empty file on the desktop called test.html
> > test.html shows an IE logo to indicate program default

You didn't run the command "helper.exe /SetAsDefaultAppGlobal".
Must be run by admin in %ProgramFiles%\Mozilla Firefox\uninstall\
If you run this, Firefox will be default for all users,
but will still ask them if it should make itself to default.
(In reply to hartnegg from comment #8)
> (In reply to Anthony Hughes, Mozilla QA (:ashughes) from comment #7)
> > I'm not able to reproduce this following your steps.
> > 
> > 1. Log into Windows XP as Administrator
> > 2. Install Firefox 24ESR
> > 3. Execute "helper.exe /SetAsDefaultAppGlobal"
> > 4. Create a new user called Howard and add him to the Users group only
> > 5. Log out and log in as Howard
> > 6. Create a empty file on the desktop called test.html
> > > test.html shows an IE logo to indicate program default
> 
> You didn't run the command "helper.exe /SetAsDefaultAppGlobal".

Yes I did, see step 3. I've run through those steps again and it now reproduces but only the first time for a new user. Every subsequent time loading test.html or Firefox.exe does not reprompt me to set it as default. Are you seeing something different?
(If you got the IE logo, then something must have gone wrong with running helper.exe)

It asks each time until the user answers yes, or removes the checkmark.

But even asking only once is double-wrong, because it's already default, and it will remain default, regardless of which answer the user clicks on.
(In reply to hartnegg from comment #10)
> (If you got the IE logo, then something must have gone wrong with running
> helper.exe)

No I get the Firefox logo on the test.html file after running helper.exe so it seems that works correctly.

> It asks each time until the user answers yes, or removes the checkmark.

Yes that's what I am seeing.

> But even asking only once is double-wrong, because it's already default, and
> it will remain default, regardless of which answer the user clicks on.

I don't by that, things are either broken or are not broken. In this case it seems to be broken so I'll try to find a version where this first broke.
It does not happen in 12.
It does happen in 16.0.2.
I don't have versions inbetween here to check with them.
After some testing it seems like this regressed between Firefox 13 and Firefox 14.
Component: Untriaged → Shell Integration
Keywords: steps-wanted
Version: 17 Branch → Trunk
Last Good: Firefox 14.0a1 2012-03-27
First Bad: Firefox 14.0a1 2012-03-28
Pushlog: https://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=c3cb87871829&tochange=c3fd0768d46a

Bug 491947 (Disable DDE shell integration) is the only bug that stands out to me that might have introduced this regression. However there are a lot of changes in this pushlog.

CCing Rob Strong who may be able to offer a more expert opinion.
Summary: Firefox 17 asks for default browser, although it already is (hlkm regkeys set) → Firefox asks for default browser although it already is
I suspect that this is at least in part due to the removal of the requestPending flag which was removed in bug 491947 along with needing to update HKLM registry keys that still have the requestPending flag. I'll try to look further into this in about a week.
Thanks Robert, and thank you @hartnegg for assisting with finding the regression range.
Blocks: fxdesktopbacklog
No longer blocks: fxdesktoptriage
Whiteboard: p=0
Removed from Backlog based on team feedback from the point estimation meeting.
No longer blocks: fxdesktopbacklog
Flags: firefox-backlog-
Whiteboard: p=0
Priority: -- → P3

This doesn't really work the way that it did when this bug was filed anymore; notably, SetAsDefaultAppGlobal no longer attempts to actually change the default browser (only to register as a possible one). SetAsDefaultAppUser, which is what the GUI options all use now, does still work and does not appear to suffer from this bug, at least on Windows 7.

Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: