diff options
-rw-r--r-- | application/basilisk/installer/package-manifest.in | 4 | ||||
-rw-r--r-- | application/basilisk/locales/Makefile.in | 2 | ||||
-rw-r--r-- | application/basilisk/locales/l10n.ini | 2 | ||||
-rw-r--r-- | application/palemoon/installer/windows/nsis/installer.nsi | 6 | ||||
-rw-r--r-- | application/palemoon/installer/windows/nsis/shared.nsh | 27 | ||||
-rw-r--r-- | application/palemoon/installer/windows/nsis/uninstaller.nsi | 51 | ||||
-rw-r--r-- | js/src/jit/MCallOptimize.cpp | 21 | ||||
-rw-r--r-- | js/src/jit/MIR.cpp | 9 | ||||
-rw-r--r-- | js/src/jit/MIR.h | 1 | ||||
-rw-r--r-- | toolkit/content/aboutSupport.js | 1 | ||||
-rw-r--r-- | toolkit/content/aboutSupport.xhtml | 9 | ||||
-rw-r--r-- | toolkit/locales/en-US/chrome/global/aboutSupport.dtd | 1 |
12 files changed, 34 insertions, 100 deletions
diff --git a/application/basilisk/installer/package-manifest.in b/application/basilisk/installer/package-manifest.in index 22655bc33..71f775904 100644 --- a/application/basilisk/installer/package-manifest.in +++ b/application/basilisk/installer/package-manifest.in @@ -477,8 +477,10 @@ @RESPATH@/browser/components/SelfSupportService.manifest @RESPATH@/browser/components/SelfSupportService.js #endif +#ifdef MOZ_SERVICES_SYNC @RESPATH@/components/SyncComponents.manifest @RESPATH@/components/Weave.js +#endif @RESPATH@/components/CaptivePortalDetectComponents.manifest @RESPATH@/components/captivedetect.js @RESPATH@/components/servicesComponents.manifest @@ -629,7 +631,9 @@ @RESPATH@/defaults/pref/channel-prefs.js ; Services (gre) prefs +#ifdef MOZ_SERVICES_SYNC @RESPATH@/defaults/pref/services-sync.js +#endif ; [Layout Engine Resources] ; Style Sheets, Graphics and other Resources used by the layout engine. diff --git a/application/basilisk/locales/Makefile.in b/application/basilisk/locales/Makefile.in index b8aee0f14..527922b11 100644 --- a/application/basilisk/locales/Makefile.in +++ b/application/basilisk/locales/Makefile.in @@ -97,7 +97,9 @@ DEFINES += -DBOOKMARKS_INCLUDE_DIR=$(dir $(call MERGE_FILE,profile/bookmarks.inc libs-%: $(NSINSTALL) -D $(DIST)/install @$(MAKE) -C $(DEPTH)/toolkit/locales libs-$* XPI_ROOT_APPID='$(XPI_ROOT_APPID)' +ifdef MOZ_SERVICES_SYNC @$(MAKE) -C $(DEPTH)/services/sync/locales AB_CD=$* XPI_NAME=locale-$* +endif @$(MAKE) -C $(DEPTH)/extensions/spellcheck/locales AB_CD=$* XPI_NAME=locale-$* # @$(MAKE) -C ../extensions/pocket/locale AB_CD=$* XPI_NAME=locale-$* @$(MAKE) -C $(DEPTH)/intl/locales AB_CD=$* XPI_NAME=locale-$* diff --git a/application/basilisk/locales/l10n.ini b/application/basilisk/locales/l10n.ini index f1d22c259..78bafe8ca 100644 --- a/application/basilisk/locales/l10n.ini +++ b/application/basilisk/locales/l10n.ini @@ -16,7 +16,9 @@ dirs = browser # non-central apps might want to use %(topsrcdir)s here, or other vars # RFE: that needs to be supported by compare-locales, too, though toolkit = toolkit/locales/l10n.ini +#ifdef MOZ_SERVICES_SYNC services_sync = services/sync/locales/l10n.ini +#endif [extras] dirs = extensions/spellcheck diff --git a/application/palemoon/installer/windows/nsis/installer.nsi b/application/palemoon/installer/windows/nsis/installer.nsi index 9216bb6e1..9f61c9cbb 100644 --- a/application/palemoon/installer/windows/nsis/installer.nsi +++ b/application/palemoon/installer/windows/nsis/installer.nsi @@ -34,7 +34,6 @@ RequestExecutionLevel user Var TmpVal Var InstallType Var AddStartMenuSC -Var AddTaskbarSC Var AddQuickLaunchSC Var AddDesktopSC Var InstallMaintenanceService @@ -92,7 +91,6 @@ VIAddVersionKey "OriginalFilename" "setup.exe" !insertmacro InitHashAppModelId !insertmacro IsHandlerForInstallDir !insertmacro IsPinnedToTaskBar -!insertmacro IsUserAdmin !insertmacro LogDesktopShortcut !insertmacro LogQuickLaunchShortcut !insertmacro LogStartMenuShortcut @@ -391,12 +389,10 @@ Section "-Application" APP_IDX ; If we are writing to HKLM and create either the desktop or start menu ; shortcuts set IconsVisible to 1 otherwise to 0. - ; Taskbar shortcuts imply having a start menu shortcut. ${StrFilter} "${FileMainEXE}" "+" "" "" $R9 StrCpy $0 "Software\Clients\StartMenuInternet\$R9\InstallInfo" ${If} $AddDesktopSC == 1 ${OrIf} $AddStartMenuSC == 1 - ${OrIf} $AddTaskbarSC == 1 WriteRegDWORD HKLM "$0" "IconsVisible" 1 ${Else} WriteRegDWORD HKLM "$0" "IconsVisible" 0 @@ -410,12 +406,10 @@ Section "-Application" APP_IDX ; If we create either the desktop or start menu shortcuts, then ; set IconsVisible to 1 otherwise to 0. - ; Taskbar shortcuts imply having a start menu shortcut. ${StrFilter} "${FileMainEXE}" "+" "" "" $R9 StrCpy $0 "Software\Clients\StartMenuInternet\$R9\InstallInfo" ${If} $AddDesktopSC == 1 ${OrIf} $AddStartMenuSC == 1 - ${OrIf} $AddTaskbarSC == 1 WriteRegDWORD HKCU "$0" "IconsVisible" 1 ${Else} WriteRegDWORD HKCU "$0" "IconsVisible" 0 diff --git a/application/palemoon/installer/windows/nsis/shared.nsh b/application/palemoon/installer/windows/nsis/shared.nsh index 815853ae7..49e9369f7 100644 --- a/application/palemoon/installer/windows/nsis/shared.nsh +++ b/application/palemoon/installer/windows/nsis/shared.nsh @@ -842,24 +842,17 @@ ClearErrors WriteIniStr "$0" "TASKBAR" "Migrated" "true" ${If} ${AtLeastWin7} - ; If we didn't run the stub installer, AddTaskbarSC will be empty. - ; We determine whether to pin based on whether we're the default - ; browser, or if we're on win8 or later, we always pin. - ${If} $AddTaskbarSC == "" - ; No need to check the default on Win8 and later - ${If} ${AtMostWin2008R2} - ; Check if the PaleMoon is the http handler for this user - SetShellVarContext current ; Set SHCTX to the current user - ${IsHandlerForInstallDir} "http" $R9 - ${If} $TmpVal == "HKLM" - SetShellVarContext all ; Set SHCTX to all users - ${EndIf} - ${EndIf} - ${If} "$R9" == "true" - ${OrIf} ${AtLeastWin8} - ${PinToTaskBar} + ; No need to check the default on Win8 and later + ${If} ${AtMostWin2008R2} + ; Check if the Pale Moon is the http handler for this user + SetShellVarContext current ; Set SHCTX to the current user + ${IsHandlerForInstallDir} "http" $R9 + ${If} $TmpVal == "HKLM" + SetShellVarContext all ; Set SHCTX to all users ${EndIf} - ${ElseIf} $AddTaskbarSC == "1" + ${EndIf} + ${If} "$R9" == "true" + ${OrIf} ${AtLeastWin8} ${PinToTaskBar} ${EndIf} ${EndIf} diff --git a/application/palemoon/installer/windows/nsis/uninstaller.nsi b/application/palemoon/installer/windows/nsis/uninstaller.nsi index c85af3656..215e93ac4 100644 --- a/application/palemoon/installer/windows/nsis/uninstaller.nsi +++ b/application/palemoon/installer/windows/nsis/uninstaller.nsi @@ -76,7 +76,6 @@ VIAddVersionKey "OriginalFilename" "helper.exe" !insertmacro InitHashAppModelId !insertmacro IsHandlerForInstallDir !insertmacro IsPinnedToTaskBar -!insertmacro IsUserAdmin !insertmacro LogDesktopShortcut !insertmacro LogQuickLaunchShortcut !insertmacro LogStartMenuShortcut @@ -168,56 +167,6 @@ UninstPage custom un.preConfirm ChangeUI IDD_VERIFY "${NSISDIR}\Contrib\UIs\default.exe" ################################################################################ -# Helper Functions - -; This function is used to uninstall the maintenance service if the -; application currently being uninstalled is the last application to use the -; maintenance service. -Function un.UninstallServiceIfNotUsed - ; $0 will store if a subkey exists - ; $1 will store the first subkey if it exists or an empty string if it doesn't - ; Backup the old values - Push $0 - Push $1 - - ; The maintenance service always uses the 64-bit registry on x64 systems - ${If} ${RunningX64} - SetRegView 64 - ${EndIf} - - ; Figure out the number of subkeys - StrCpy $0 0 - ${Do} - EnumRegKey $1 HKLM "Software\Mozilla\MaintenanceService" $0 - ${If} "$1" == "" - ${ExitDo} - ${EndIf} - IntOp $0 $0 + 1 - ${Loop} - - ; Restore back the registry view - ${If} ${RunningX64} - SetRegView lastUsed - ${EndIf} - ${If} $0 == 0 - ; Get the path of the maintenance service uninstaller - ReadRegStr $1 HKLM ${MaintUninstallKey} "UninstallString" - - ; If the uninstall string does not exist, skip executing it - StrCmp $1 "" doneUninstall - - ; $1 is already a quoted string pointing to the install path - ; so we're already protected against paths with spaces - nsExec::Exec "$1 /S" -doneUninstall: - ${EndIf} - - ; Restore the old value of $1 and $0 - Pop $1 - Pop $0 -FunctionEnd - -################################################################################ # Install Sections ; Empty section required for the installer to compile as an uninstaller Section "" diff --git a/js/src/jit/MCallOptimize.cpp b/js/src/jit/MCallOptimize.cpp index 0d5779cee..fed5aefe5 100644 --- a/js/src/jit/MCallOptimize.cpp +++ b/js/src/jit/MCallOptimize.cpp @@ -621,7 +621,8 @@ IonBuilder::inlineArrayPopShift(CallInfo& callInfo, MArrayPopShift::Mode mode) return InliningStatus_NotInlined; } - if (ArrayPrototypeHasIndexedProperty(this, script())) { + // Watch out for extra indexed properties on the object or its prototype. + if (ElementAccessHasExtraIndexedProperty(this, obj)) { trackOptimizationOutcome(TrackedOutcome::ProtoIndexedProps); return InliningStatus_NotInlined; } @@ -748,14 +749,8 @@ IonBuilder::inlineArrayPush(CallInfo& callInfo) const Class* clasp = thisTypes->getKnownClass(constraints()); if (clasp != &ArrayObject::class_) return InliningStatus_NotInlined; - if (thisTypes->hasObjectFlags(constraints(), OBJECT_FLAG_SPARSE_INDEXES | - OBJECT_FLAG_LENGTH_OVERFLOW)) - { - trackOptimizationOutcome(TrackedOutcome::ArrayBadFlags); - return InliningStatus_NotInlined; - } - if (ArrayPrototypeHasIndexedProperty(this, script())) { + if (ElementAccessHasExtraIndexedProperty(this, obj)) { trackOptimizationOutcome(TrackedOutcome::ProtoIndexedProps); return InliningStatus_NotInlined; } @@ -825,15 +820,9 @@ IonBuilder::inlineArraySlice(CallInfo& callInfo) const Class* clasp = thisTypes->getKnownClass(constraints()); if (clasp != &ArrayObject::class_) return InliningStatus_NotInlined; - if (thisTypes->hasObjectFlags(constraints(), OBJECT_FLAG_SPARSE_INDEXES | - OBJECT_FLAG_LENGTH_OVERFLOW)) - { - trackOptimizationOutcome(TrackedOutcome::ArrayBadFlags); - return InliningStatus_NotInlined; - } - // Watch out for indexed properties on the prototype. - if (ArrayPrototypeHasIndexedProperty(this, script())) { + // Watch out for indexed properties on the object or its prototype. + if (ElementAccessHasExtraIndexedProperty(this, obj)) { trackOptimizationOutcome(TrackedOutcome::ProtoIndexedProps); return InliningStatus_NotInlined; } diff --git a/js/src/jit/MIR.cpp b/js/src/jit/MIR.cpp index 6aa46be4b..190b40bb2 100644 --- a/js/src/jit/MIR.cpp +++ b/js/src/jit/MIR.cpp @@ -6221,15 +6221,6 @@ PrototypeHasIndexedProperty(IonBuilder* builder, JSObject* obj) return false; } -// Whether Array.prototype, or an object on its proto chain, has an indexed property. -bool -jit::ArrayPrototypeHasIndexedProperty(IonBuilder* builder, JSScript* script) -{ - if (JSObject* proto = script->global().maybeGetArrayPrototype()) - return PrototypeHasIndexedProperty(builder, proto); - return true; -} - // Whether obj or any of its prototypes have an indexed property. bool jit::TypeCanHaveExtraIndexedProperties(IonBuilder* builder, TemporaryTypeSet* types) diff --git a/js/src/jit/MIR.h b/js/src/jit/MIR.h index 4bedfb268..6526e0931 100644 --- a/js/src/jit/MIR.h +++ b/js/src/jit/MIR.h @@ -14054,7 +14054,6 @@ bool PropertyWriteNeedsTypeBarrier(TempAllocator& alloc, CompilerConstraintList* MBasicBlock* current, MDefinition** pobj, PropertyName* name, MDefinition** pvalue, bool canModify, MIRType implicitType = MIRType::None); -bool ArrayPrototypeHasIndexedProperty(IonBuilder* builder, JSScript* script); bool TypeCanHaveExtraIndexedProperties(IonBuilder* builder, TemporaryTypeSet* types); inline MIRType diff --git a/toolkit/content/aboutSupport.js b/toolkit/content/aboutSupport.js index b1d7ab5f6..8908a0f80 100644 --- a/toolkit/content/aboutSupport.js +++ b/toolkit/content/aboutSupport.js @@ -40,6 +40,7 @@ var snapshotFormatters = { $("application-box").textContent = data.name; $("useragent-box").textContent = data.userAgent; $("os-box").textContent = data.osVersion; + $("binary-box").textContent = Services.dirsvc.get("XREExeF", Ci.nsIFile).path; $("supportLink").href = data.supportURL; let version = AppConstants.MOZ_APP_VERSION_DISPLAY; if (data.versionArch) { diff --git a/toolkit/content/aboutSupport.xhtml b/toolkit/content/aboutSupport.xhtml index 5eb64d437..5e6319182 100644 --- a/toolkit/content/aboutSupport.xhtml +++ b/toolkit/content/aboutSupport.xhtml @@ -147,6 +147,15 @@ </td> </tr> + <tr class="no-copy"> + <th class="column"> + &aboutSupport.appBasicsBinary; + </th> + + <td id="binary-box"> + </td> + </tr> + <tr id="profile-row" class="no-copy"> <th class="column"> #ifdef XP_WIN diff --git a/toolkit/locales/en-US/chrome/global/aboutSupport.dtd b/toolkit/locales/en-US/chrome/global/aboutSupport.dtd index a0dd3531b..a2477fb2e 100644 --- a/toolkit/locales/en-US/chrome/global/aboutSupport.dtd +++ b/toolkit/locales/en-US/chrome/global/aboutSupport.dtd @@ -45,6 +45,7 @@ This is likely the same like id.heading in crashes.dtd. --> <!ENTITY aboutSupport.appBasicsUpdateHistory "Update History"> <!ENTITY aboutSupport.appBasicsShowUpdateHistory "Show Update History"> +<!ENTITY aboutSupport.appBasicsBinary "Application Binary"> <!ENTITY aboutSupport.appBasicsProfileDir "Profile Directory"> <!-- LOCALIZATION NOTE (aboutSupport.appBasicsProfileDirWinMac): This is the Windows- and Mac-specific variant of aboutSupport.appBasicsProfileDir. |