Windows XP does not trigger Maintenance Service Uninstaller when installing product

RESOLVED FIXED in Firefox 12

Status

()

defect
RESOLVED FIXED
8 years ago
7 years ago

People

(Reporter: simona.marcu, Assigned: bbondy)

Tracking

unspecified
mozilla12
x86
Windows XP
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(firefox11 unaffected, firefox12 verified, firefox13 verified, firefox14 verified)

Details

(Whiteboard: [qa+])

Attachments

(1 attachment)

Mozilla/5.0 (Windows NT 6.0; rv:12.0a2) Gecko/20120312 Firefox/12.0a2

Mozilla Maintenance service is not uninstalled with the last Firefox product that would use it. 

Reproducible: always

Prerequisites:
- make sure that no Firefox versions that are updating through the service is installed.

Steps to reproduce:
1. Install the latest build that uses the service to update - make sure that "Install Maintenance Service" box is checked
2. Install the second latest build that uses the service to update
3. Uninstall the build from step 1 (make sure that the service was not uninstalled with the build)
4. Uninstall the build from step 2.

Expected results:
In step 4 the service is uninstalled with the last build. 

Actual results:
The service is not uninstalled with the last build.

Notes:
Reproducible on: Windows 7, Windows Vista and Windows XP.
Not reproducible on Windows Server 2003.
Could you uninstall the builds, then delete this folder:
HKEY_LOCAL_MACHINE\SOFTWARE\Mozilla\MaintenanceService

Then re-run the test, does it still reproduce?

I think maybe it has a previous unclean uninstall that leaves behind a registry key for the install directory underneath HKEY_LOCAL_MACHINE\SOFTWARE\Mozilla\MaintenanceService.  Another thing is it could be a fallback key on your test machines that we used to install as part of the installer before releasing.

Please let me know if you can reproduce after that.
(In reply to Brian R. Bondy [:bbondy] from comment #1)
> Could you uninstall the builds, then delete this folder:
> HKEY_LOCAL_MACHINE\SOFTWARE\Mozilla\MaintenanceService
> 
> Then re-run the test, does it still reproduce?

Issue is not reproducible after deleting the folder on Windows 7 32-bit and 7 64-bit.
But issue is still reproducible On Win XP - even if the folder is deleted.
After deleting the folder from HKEY_LOCAL_MACHINE\SOFTWARE\Mozilla\MaintenanceService - issue is also not reproducible on Windows Vista.
I can't think of why off hand but I did reproduce this on Windows XP and not on my Windows 7 machine.  For some reason the registry key isn't being removed from the NSIS command on Windows XP.  Since it isn't removed the NSIS uninstaller for the service won't be automatically run.
Summary: Mozilla Maintenance service does not get uninstalled when removing all the Firefox builds → Windows XP does not trigger Maintenance Service Uninstaller when installing product
Blocks: 720521
OS: All → Windows XP
So it turns out that on 32bit systems the following NSIS command is ignored:
SetRegView 64

... EXCEPT in the case of Windows XP x86 and if you are doing a delete reg key operation.  All other operations work and delete reg key works on all other OS as well.
By the way this was reproducible on XP even with 1 installer and not related specifically to having 2 installs.
Posted patch Patch v1.Splinter Review
The patch only needed the check around the delete reg key, but I think it is better to put it around all set reg view operations in case something else pops up one day in the future.
Assignee: nobody → netzen
Attachment #606549 - Flags: review?(robert.bugzilla)
Mozilla/5.0 (Windows NT 5.1; rv:12.0) Gecko/20100101 Firefox/12.0

Verified on Firefox 12 beta 1 - issue is reproducible only on Windows XP (tested on 2 different machines). 
Tested on Win 7, Win Vista, Win 2003 and issue is not reproducible.
Attachment #606549 - Flags: review?(robert.bugzilla) → review+
This is ready to land but I'm away until next week so I'd rather wait to land it until I'm around in case something goes wrong.
https://hg.mozilla.org/mozilla-central/rev/b95853f361bf
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → FIXED
Comment on attachment 606549 [details] [diff] [review]
Patch v1.

[Approval Request Comment]
Regression caused by (bug #): 720521 
User impact if declined: When uninstalling Firefox on Windows XP the maintenance service will not be automatically uninstalled.  The user would be able to uninstall from add/remove programs using the maintenance service uninstaller though.  It could make some users upset that they installed Firefox and then uninstalled but some things are left behind. 
Testing completed (on m-c, etc.): I tested it myself on m-c.
Risk to taking this patch (and alternatives if risky): Low risk.
String changes made by this patch: None.
Attachment #606549 - Flags: approval-mozilla-beta?
Attachment #606549 - Flags: approval-mozilla-aurora?
Comment on attachment 606549 [details] [diff] [review]
Patch v1.

[Triage Comment]
One more fix for the updater service - approved for all branches for the same reason as bug 720521.
Attachment #606549 - Flags: approval-mozilla-beta?
Attachment #606549 - Flags: approval-mozilla-beta+
Attachment #606549 - Flags: approval-mozilla-aurora?
Attachment #606549 - Flags: approval-mozilla-aurora+
Target Milestone: mozilla14 → mozilla12
Whiteboard: [qa+]
Mozilla/5.0 (Windows NT 5.1; rv:12.0) Gecko/20100101 Firefox/12.0

I am still able to reproduce this on Firefox 12 beta 3. I previously uninstalled all the Firefox versions and I installed the latest beta (beta 3). 
The service is not uninstalled with the build.
Does it work on Nightly for you? Did you try clearing your registry folder for the service before the test?
Mozilla/5.0 (Windows NT 5.1; rv:14.0) Gecko/20120330 Firefox/14.0a1
Mozilla/5.0 (Windows NT 5.1; rv:13.0) Gecko/20120330 Firefox/13.0a2

Not reproducible on the latest Nightly and Aurora.
But the issue is still encountered on both Nightly and Aurora for the following scenario: 
1. Clean the registry folder
2. Install Firefox 12 beta 3
3. Manually uninstall Firefox 12 beta 3 and the service
4. Installed Nighlty/Aurora
5. Uninstall Nightly/Aurora

Actual results: The service does not uninstall with the latest build (Nightly/Aurora).

The key that I have left in the registry folder is after step 5 is:
HKEY_LOCAL_MACHINE\SOFTWARE\Mozilla\MaintenanceService\eee36f85e3f34e5ed2956b29a116c85e
Does the service get uninstalled after Step 3 but before Step 4?
Yes, the service gets uninstalled but only if I uninstall it manually from Control Panel.
Mozilla/5.0 (Windows NT 5.1; rv:12.0) Gecko/20100101 Firefox/12.0

This is not reproducible on Firefox 12 beta 4. The service gets uninstalled with the  latest build that uses it.

Marking this as Verified on Firefox 12.
Mozilla/5.0 (Windows NT 5.1; rv:13.0) Gecko/20100101 Firefox/13.0

Verified that on Firefox 13 beta 2 the service gets uninstalled with the  latest build that uses it.
Mozilla/5.0 (Windows NT 5.1; rv:14.0) Gecko/20100101 Firefox/14.0

Verified on Firefox 14 beta 7 that the Mozilla Maintenance service is uninstalled along with the build (the last build that could use it).
You need to log in before you can comment on or make changes to this bug.