From 75668d45221a48728b67c63ba3ef41c728f51214 Mon Sep 17 00:00:00 2001
From: Andrey Kleshchev <andreykproductengine@lindenlab.com>
Date: Thu, 16 Jun 2022 23:47:26 +0300
Subject: SL-17585 Crash at LLAppViewer::initConfiguration

---
 indra/newview/installers/windows/installer_template.nsi | 2 ++
 1 file changed, 2 insertions(+)

(limited to 'indra/newview/installers/windows')

diff --git a/indra/newview/installers/windows/installer_template.nsi b/indra/newview/installers/windows/installer_template.nsi
index 7513908cb4..da46587403 100644
--- a/indra/newview/installers/windows/installer_template.nsi
+++ b/indra/newview/installers/windows/installer_template.nsi
@@ -622,6 +622,8 @@ Function RemoveProgFilesOnInst
 Push $0
 StrCpy $0 0
 
+ClearErrors
+
 PREINSTALLREMOVE:
 
 # Remove old SecondLife.exe to invalidate any old shortcuts to it that may be in non-standard locations. See MAINT-3575
-- 
cgit v1.2.3


From 9f3e815adc5abb32272e7413e20168dcb73ef60e Mon Sep 17 00:00:00 2001
From: Andrey Kleshchev <andreykproductengine@lindenlab.com>
Date: Fri, 17 Jun 2022 20:43:04 +0300
Subject: SL-17585 Ensure nothing went wrong with installation during 'File'
 operations

---
 .../installers/windows/installer_template.nsi      |  31 +++++++++++++++------
 indra/newview/installers/windows/lang_da.nsi       | Bin 11992 -> 12802 bytes
 indra/newview/installers/windows/lang_de.nsi       |   4 +++
 indra/newview/installers/windows/lang_en-us.nsi    | Bin 11666 -> 12480 bytes
 indra/newview/installers/windows/lang_es.nsi       | Bin 12976 -> 13790 bytes
 indra/newview/installers/windows/lang_fr.nsi       | Bin 13492 -> 14302 bytes
 indra/newview/installers/windows/lang_it.nsi       | Bin 12714 -> 13528 bytes
 indra/newview/installers/windows/lang_ja.nsi       | Bin 9880 -> 10698 bytes
 indra/newview/installers/windows/lang_pl.nsi       | Bin 12312 -> 13122 bytes
 indra/newview/installers/windows/lang_pt-br.nsi    | Bin 13136 -> 13970 bytes
 indra/newview/installers/windows/lang_ru.nsi       | Bin 12450 -> 13264 bytes
 indra/newview/installers/windows/lang_tr.nsi       | Bin 12360 -> 13174 bytes
 indra/newview/installers/windows/lang_zh.nsi       | Bin 9324 -> 10144 bytes
 13 files changed, 27 insertions(+), 8 deletions(-)

(limited to 'indra/newview/installers/windows')

diff --git a/indra/newview/installers/windows/installer_template.nsi b/indra/newview/installers/windows/installer_template.nsi
index da46587403..7d5d4fc16f 100644
--- a/indra/newview/installers/windows/installer_template.nsi
+++ b/indra/newview/installers/windows/installer_template.nsi
@@ -351,11 +351,26 @@ DeleteRegValue HKEY_CLASSES_ROOT "Applications\$VIEWER_EXE" "IsHostApp"
 DeleteRegValue HKEY_CLASSES_ROOT "Applications\$VIEWER_EXE" "NoStartPage"
 ClearErrors
 
+INSTALL_FILES_START:
+
 Call RemoveProgFilesOnInst		# Remove existing files to prevent certain errors when running the new version of the viewer
 
 # This placeholder is replaced by the complete list of all the files in the installer, by viewer_manifest.py
 %%INSTALL_FILES%%
 
+IfErrors 0 INSTALL_FILES_DONE
+  StrCmp $SKIP_DIALOGS "true" INSTALL_FILES_DONE
+	MessageBox MB_ABORTRETRYIGNORE $(ErrorSecondLifeInstallRetry) IDABORT INSTALL_FILES_CANCEL IDRETRY INSTALL_FILES_START
+    # MB_ABORTRETRYIGNORE does not accept IDIGNORE
+    Goto INSTALL_FILES_DONE
+
+INSTALL_FILES_CANCEL:
+  Call RemoveProgFilesOnInst
+  MessageBox MB_OK $(ErrorSecondLifeInstallSupport)
+  Quit
+
+INSTALL_FILES_DONE:
+
 # Pass the installer's language to the client to use as a default
 StrCpy $SHORTCUT_LANG_PARAM "--set InstallLanguage $(LanguageCode)"
 
@@ -624,7 +639,7 @@ StrCpy $0 0
 
 ClearErrors
 
-PREINSTALLREMOVE:
+PREINSTALL_REMOVE:
 
 # Remove old SecondLife.exe to invalidate any old shortcuts to it that may be in non-standard locations. See MAINT-3575
 Delete "$INSTDIR\$INSTEXE"
@@ -644,17 +659,17 @@ RMDir /r "$INSTDIR\llplugin"
 
 IntOp $0 $0 + 1
 
-IfErrors 0 PREINSTALLDONE
-  IntCmp $0 1 PREINSTALLREMOVE #try again once
-    StrCmp $SKIP_DIALOGS "true" PREINSTALLDONE
-      MessageBox MB_ABORTRETRYIGNORE $(CloseSecondLifeInstRM) IDABORT PREINSTALLFAIL IDRETRY PREINSTALLREMOVE
+IfErrors 0 PREINSTALL_DONE
+  IntCmp $0 1 PREINSTALL_REMOVE #try again once
+    StrCmp $SKIP_DIALOGS "true" PREINSTALL_DONE
+      MessageBox MB_ABORTRETRYIGNORE $(CloseSecondLifeInstRM) IDABORT PREINSTALL_FAIL IDRETRY PREINSTALL_REMOVE
       # MB_ABORTRETRYIGNORE does not accept IDIGNORE
-      Goto PREINSTALLDONE
+      Goto PREINSTALL_DONE
 
-PREINSTALLFAIL:
+PREINSTALL_FAIL:
     Quit
 
-PREINSTALLDONE:
+PREINSTALL_DONE:
 
 # We are no longer including release notes with the viewer, so remove them.
 Delete "$SMPROGRAMS\$INSTSHORTCUT\SL Release Notes.lnk"
diff --git a/indra/newview/installers/windows/lang_da.nsi b/indra/newview/installers/windows/lang_da.nsi
index 648ddbfb85..73f23086be 100644
Binary files a/indra/newview/installers/windows/lang_da.nsi and b/indra/newview/installers/windows/lang_da.nsi differ
diff --git a/indra/newview/installers/windows/lang_de.nsi b/indra/newview/installers/windows/lang_de.nsi
index 188c30197a..d9a5e90a78 100755
--- a/indra/newview/installers/windows/lang_de.nsi
+++ b/indra/newview/installers/windows/lang_de.nsi
@@ -73,6 +73,10 @@ LangString CloseSecondLifeUnInstMB ${LANG_GERMAN} "Second Life kann nicht entfer
 ; CheckNetworkConnection
 LangString CheckNetworkConnectionDP ${LANG_GERMAN} "Prüfe Netzwerkverbindung..."
 
+; error during installation
+LangString ErrorSecondLifeInstallRetry ${LANG_GERMAN} "Second Life installer encountered issues during installation. Some files may not have been copied correctly."
+LangString ErrorSecondLifeInstallSupport ${LANG_GERMAN} "Please reinstall viewer from https://secondlife.com/support/downloads/ and contact https://support.secondlife.com if issue persists after reinstall."
+
 ; ask to remove user's data files
 LangString RemoveDataFilesMB ${LANG_GERMAN} "Möchten Sie alle anderen zu Second Life gehörigen Dateien ebenfalls ENTFERNEN?$\n$\nWir empfehlen, die Einstellungen und Cache-Dateien zu behalten, wenn Sie andere Versionen von Second Life installiert haben oder eine Deinstallation durchführen, um Second Life auf eine neuere Version zu aktualisieren."
 
diff --git a/indra/newview/installers/windows/lang_en-us.nsi b/indra/newview/installers/windows/lang_en-us.nsi
index 0639d51e10..2eaf97d023 100644
Binary files a/indra/newview/installers/windows/lang_en-us.nsi and b/indra/newview/installers/windows/lang_en-us.nsi differ
diff --git a/indra/newview/installers/windows/lang_es.nsi b/indra/newview/installers/windows/lang_es.nsi
index ee30651a38..364cc9f67e 100755
Binary files a/indra/newview/installers/windows/lang_es.nsi and b/indra/newview/installers/windows/lang_es.nsi differ
diff --git a/indra/newview/installers/windows/lang_fr.nsi b/indra/newview/installers/windows/lang_fr.nsi
index 7cd90ec314..2f34c0c87a 100755
Binary files a/indra/newview/installers/windows/lang_fr.nsi and b/indra/newview/installers/windows/lang_fr.nsi differ
diff --git a/indra/newview/installers/windows/lang_it.nsi b/indra/newview/installers/windows/lang_it.nsi
index 194062da9a..51214d3a9c 100755
Binary files a/indra/newview/installers/windows/lang_it.nsi and b/indra/newview/installers/windows/lang_it.nsi differ
diff --git a/indra/newview/installers/windows/lang_ja.nsi b/indra/newview/installers/windows/lang_ja.nsi
index a54005ba14..296703d1a3 100755
Binary files a/indra/newview/installers/windows/lang_ja.nsi and b/indra/newview/installers/windows/lang_ja.nsi differ
diff --git a/indra/newview/installers/windows/lang_pl.nsi b/indra/newview/installers/windows/lang_pl.nsi
index 355d806866..299645bbb7 100644
Binary files a/indra/newview/installers/windows/lang_pl.nsi and b/indra/newview/installers/windows/lang_pl.nsi differ
diff --git a/indra/newview/installers/windows/lang_pt-br.nsi b/indra/newview/installers/windows/lang_pt-br.nsi
index 97f5d2b44a..542c8654b5 100755
Binary files a/indra/newview/installers/windows/lang_pt-br.nsi and b/indra/newview/installers/windows/lang_pt-br.nsi differ
diff --git a/indra/newview/installers/windows/lang_ru.nsi b/indra/newview/installers/windows/lang_ru.nsi
index 65a9f4846d..4e53a4957d 100755
Binary files a/indra/newview/installers/windows/lang_ru.nsi and b/indra/newview/installers/windows/lang_ru.nsi differ
diff --git a/indra/newview/installers/windows/lang_tr.nsi b/indra/newview/installers/windows/lang_tr.nsi
index e71886cc66..bae5029ad1 100755
Binary files a/indra/newview/installers/windows/lang_tr.nsi and b/indra/newview/installers/windows/lang_tr.nsi differ
diff --git a/indra/newview/installers/windows/lang_zh.nsi b/indra/newview/installers/windows/lang_zh.nsi
index f5f0c6cbdf..7922d9df52 100755
Binary files a/indra/newview/installers/windows/lang_zh.nsi and b/indra/newview/installers/windows/lang_zh.nsi differ
-- 
cgit v1.2.3


From 791b7ff0e99c40b9de1b542f1231d21faebada05 Mon Sep 17 00:00:00 2001
From: Andrey Kleshchev <andreykproductengine@lindenlab.com>
Date: Mon, 20 Jun 2022 17:06:55 +0300
Subject: SL-17585 Don't bother users with dialogs if we are already quiting

---
 indra/newview/installers/windows/installer_template.nsi | 3 +++
 indra/newview/installers/windows/lang_de.nsi            | 4 ++--
 2 files changed, 5 insertions(+), 2 deletions(-)

(limited to 'indra/newview/installers/windows')

diff --git a/indra/newview/installers/windows/installer_template.nsi b/indra/newview/installers/windows/installer_template.nsi
index 7d5d4fc16f..60e26274cb 100644
--- a/indra/newview/installers/windows/installer_template.nsi
+++ b/indra/newview/installers/windows/installer_template.nsi
@@ -365,6 +365,9 @@ IfErrors 0 INSTALL_FILES_DONE
     Goto INSTALL_FILES_DONE
 
 INSTALL_FILES_CANCEL:
+  # We are quiting, cleanup.
+  # Silence warnings from RemoveProgFilesOnInst.
+  StrCpy $SKIP_DIALOGS "true"
   Call RemoveProgFilesOnInst
   MessageBox MB_OK $(ErrorSecondLifeInstallSupport)
   Quit
diff --git a/indra/newview/installers/windows/lang_de.nsi b/indra/newview/installers/windows/lang_de.nsi
index d9a5e90a78..7cc70e4c76 100755
--- a/indra/newview/installers/windows/lang_de.nsi
+++ b/indra/newview/installers/windows/lang_de.nsi
@@ -74,8 +74,8 @@ LangString CloseSecondLifeUnInstMB ${LANG_GERMAN} "Second Life kann nicht entfer
 LangString CheckNetworkConnectionDP ${LANG_GERMAN} "Prüfe Netzwerkverbindung..."
 
 ; error during installation
-LangString ErrorSecondLifeInstallRetry ${LANG_GERMAN} "Second Life installer encountered issues during installation. Some files may not have been copied correctly."
-LangString ErrorSecondLifeInstallSupport ${LANG_GERMAN} "Please reinstall viewer from https://secondlife.com/support/downloads/ and contact https://support.secondlife.com if issue persists after reinstall."
+LangString ErrorSecondLifeInstallRetry ${LANG_GERMAN} "Second Life konnte nicht korrekt installiert werden, einige Dateien wurden eventuell nicht korrekt von der Installationroutine kopiert."
+LangString ErrorSecondLifeInstallSupport ${LANG_GERMAN} "Bitte laden Sie den Viewer erneut von https://secondlife.com/support/downloads/ und versuchen Sie die Installation erneut. Sollte das Problem weiterhin bestehen, dann kontaktieren Sie unseren Support unter https://support.secondlife.com."
 
 ; ask to remove user's data files
 LangString RemoveDataFilesMB ${LANG_GERMAN} "Möchten Sie alle anderen zu Second Life gehörigen Dateien ebenfalls ENTFERNEN?$\n$\nWir empfehlen, die Einstellungen und Cache-Dateien zu behalten, wenn Sie andere Versionen von Second Life installiert haben oder eine Deinstallation durchführen, um Second Life auf eine neuere Version zu aktualisieren."
-- 
cgit v1.2.3