summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMike Kaganski <mike.kaganski@collabora.com>2018-09-20 08:05:41 +0300
committerMichael Stahl <Michael.Stahl@cib.de>2019-08-27 14:15:32 +0200
commit74c722ad010bac861cc528e57dba9ff5177016a6 (patch)
treeb5f2c15481a4dcb93537efa9b3767a09af07eb20
parenttdf#118869: mark some properties secure to pass them to elevated install (diff)
downloadcore-74c722ad010bac861cc528e57dba9ff5177016a6.tar.gz
core-74c722ad010bac861cc528e57dba9ff5177016a6.zip
tdf#115405, tdf#119910: don't check if UCRT is already installed
There appears to be common situation that a system has *some* UCRT libraries in System32, that were installed improperly (presumably by some applications using simple copy).In these cases, our installer would detect the presence of ucrtbase.dll, and not try to install UCRT on the system. Unfortunately, it seems that oftentimes such improper UCRT installations miss some parts of UCRT, which leads to LibreOffice failing to start with messages like "The program can't start because api-ms-win-crt-string-l1-1-0.dll is missing from your computer. Try reinstalling the program to fix this problem." (the missing component varies). This patch removes the check for UCRT presence. Installer will try to install UCRT on applicable systems unconditionally. Since the proper outcomes in case of already present UCRT are either WU_S_ALREADY_INSTALLED or WU_E_NOT_APPLICABLE and both are treated as success in inst_msu action (see InstallMSU in setup_native/source/win32/customactions/inst_msu/inst_msu.cxx), this should only make this part more robust, and not bring new problems (yes, I know that actually there will be new problems, as usual). Reviewed-on: https://gerrit.libreoffice.org/60789 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com> (cherry picked from commit 1882827320ed760de82211cf690b686f8d34ff74) Reviewed-on: https://gerrit.libreoffice.org/61444 Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com> Change-Id: I22a3d357014d31a8e492ff8a15bcb477eeb79735
-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/Property.idt2
-rw-r--r--scp2/source/ooo/ucrt.scp12
2 files changed, 7 insertions, 7 deletions
diff --git a/instsetoo_native/inc_openoffice/windows/msi_templates/Property.idt b/instsetoo_native/inc_openoffice/windows/msi_templates/Property.idt
index f51e12ed0d60..44fb9f500387 100644
--- a/instsetoo_native/inc_openoffice/windows/msi_templates/Property.idt
+++ b/instsetoo_native/inc_openoffice/windows/msi_templates/Property.idt
@@ -42,7 +42,7 @@ ProgressType3 installs
Quickstarterlinkname QUICKSTARTERLINKNAMETEMPLATE
RebootYesNo Yes
ReinstallModeText omus
-SecureCustomProperties NEWPRODUCTS;OLDPRODUCTS;WIN81S14;UCRT_DETECTED
+SecureCustomProperties NEWPRODUCTS;OLDPRODUCTS;WIN81S14
SetupType Typical
SELECT_WORD 0
SELECT_EXCEL 0
diff --git a/scp2/source/ooo/ucrt.scp b/scp2/source/ooo/ucrt.scp
index 4a13309f6364..ae2eb27a4dbe 100644
--- a/scp2/source/ooo/ucrt.scp
+++ b/scp2/source/ooo/ucrt.scp
@@ -91,7 +91,7 @@ WindowsCustomAction gid_Customaction_check_win7x64_ucrt
Source = "InstMSUBinary";
Target = "Windows61-KB2999226-x64msu";
Inbinarytable = 0;
- Assignment1 = ("InstallExecuteSequence", "Not Installed And VersionNT = 601 And VersionNT64 And Not UCRT_DETECTED", "FileCost");
+ Assignment1 = ("InstallExecuteSequence", "Not Installed And VersionNT = 601 And VersionNT64", "FileCost");
Styles = "NO_FILE";
End
@@ -101,7 +101,7 @@ WindowsCustomAction gid_Customaction_check_win8x64_ucrt
Source = "InstMSUBinary";
Target = "Windows8-RT-KB2999226-x64msu";
Inbinarytable = 0;
- Assignment1 = ("InstallExecuteSequence", "Not Installed And VersionNT = 602 And VersionNT64 And Not UCRT_DETECTED", "check_win7x64_ucrt");
+ Assignment1 = ("InstallExecuteSequence", "Not Installed And VersionNT = 602 And VersionNT64", "check_win7x64_ucrt");
Styles = "NO_FILE";
End
@@ -111,7 +111,7 @@ WindowsCustomAction gid_Customaction_check_win81x64_ucrt
Source = "InstMSUBinary";
Target = "Windows81-KB2999226-x64msu";
Inbinarytable = 0;
- Assignment1 = ("InstallExecuteSequence", "Not Installed And VersionNT = 603 And VersionNT64 And Not UCRT_DETECTED", "check_win8x64_ucrt");
+ Assignment1 = ("InstallExecuteSequence", "Not Installed And VersionNT = 603 And VersionNT64", "check_win8x64_ucrt");
Styles = "NO_FILE";
End
@@ -127,7 +127,7 @@ WindowsCustomAction gid_Customaction_check_win7x32_ucrt
Source = "InstMSUBinary";
Target = "Windows61-KB2999226-x86msu";
Inbinarytable = 0;
- Assignment1 = ("InstallExecuteSequence", "Not Installed And VersionNT = 601 And Not VersionNT64 And Not UCRT_DETECTED", "check_win81x64_ucrt");
+ Assignment1 = ("InstallExecuteSequence", "Not Installed And VersionNT = 601 And Not VersionNT64", "check_win81x64_ucrt");
Styles = "NO_FILE";
End
@@ -137,7 +137,7 @@ WindowsCustomAction gid_Customaction_check_win8x32_ucrt
Source = "InstMSUBinary";
Target = "Windows8-RT-KB2999226-x86msu";
Inbinarytable = 0;
- Assignment1 = ("InstallExecuteSequence", "Not Installed And VersionNT = 602 And Not VersionNT64 And Not UCRT_DETECTED", "check_win7x32_ucrt");
+ Assignment1 = ("InstallExecuteSequence", "Not Installed And VersionNT = 602 And Not VersionNT64", "check_win7x32_ucrt");
Styles = "NO_FILE";
End
@@ -147,7 +147,7 @@ WindowsCustomAction gid_Customaction_check_win81x32_ucrt
Source = "InstMSUBinary";
Target = "Windows81-KB2999226-x86msu";
Inbinarytable = 0;
- Assignment1 = ("InstallExecuteSequence", "Not Installed And VersionNT = 603 And Not VersionNT64 And Not UCRT_DETECTED", "check_win8x32_ucrt");
+ Assignment1 = ("InstallExecuteSequence", "Not Installed And VersionNT = 603 And Not VersionNT64", "check_win8x32_ucrt");
Styles = "NO_FILE";
End