Bug 1070988 - Windows installer should remove leftover chrome.manifest on pave over install to prevent startup crash with Firefox 32 and above with unpacked omni.ja. r=tabraldes
authorRobert Strong <robert.bugzilla@gmail.com>
Wed, 24 Sep 2014 00:33:58 -0700
changeset 206887 532ad1c88cfa5ce3f3428c976d0820c9f2185a4b
parent 206886 35dcddea2c7a6e8548c2ba34191ec653348f4111
child 206888 7eeb76564dde5412f90373e6a7da1fa688915ee2
push id49539
push userrstrong@mozilla.com
push dateWed, 24 Sep 2014 07:34:17 +0000
treeherdermozilla-inbound@532ad1c88cfa [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewerstabraldes
bugs1070988
milestone35.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1070988 - Windows installer should remove leftover chrome.manifest on pave over install to prevent startup crash with Firefox 32 and above with unpacked omni.ja. r=tabraldes
browser/installer/windows/nsis/shared.nsh
--- a/browser/installer/windows/nsis/shared.nsh
+++ b/browser/installer/windows/nsis/shared.nsh
@@ -1003,16 +1003,24 @@ FunctionEnd
   ClearErrors
 !macroend
 
 !define RemoveDEHRegistration "!insertmacro RemoveDEHRegistration"
 !define un.RemoveDEHRegistration "!insertmacro RemoveDEHRegistration"
 
 ; Removes various directories and files for reasons noted below.
 !macro RemoveDeprecatedFiles
+  ; Some users are ending up with unpacked chrome instead of omni.ja. This
+  ; causes Firefox to break badly after upgrading from Firefox 31, see bug
+  ; 1063052. Removing the chrome.manifest from the install directory causes
+  ; Firefox to use the updated omni.ja so it won't crash.
+  ${If} ${FileExists} "$INSTDIR\chrome.manifest"
+    Delete "$INSTDIR\chrome.manifest"
+  ${EndIf}
+
   ; Remove talkback if it is present (remove after bug 386760 is fixed)
   ${If} ${FileExists} "$INSTDIR\extensions\talkback@mozilla.org"
     RmDir /r /REBOOTOK "$INSTDIR\extensions\talkback@mozilla.org"
   ${EndIf}
 
   ; Remove the Java Console extension (bug 597235)
   ${If} ${FileExists} "$INSTDIR\extensions\{CAFEEFAC-0015-0000-0012-ABCDEFFEDCBA}"
     RmDir /r /REBOOTOK "$INSTDIR\extensions\{CAFEEFAC-0015-0000-0012-ABCDEFFEDCBA}"