diff options
author | Mike Kaganski <mike.kaganski@collabora.com> | 2018-09-20 08:05:41 +0300 |
---|---|---|
committer | Thorsten Behrens <Thorsten.Behrens@CIB.de> | 2019-08-30 23:32:15 +0200 |
commit | 9de835ae66a9b26bd57f580bc670831cf2a313f3 (patch) | |
tree | 37659a6f1b9bc67a7930acc9b6d8e5f48f774f99 | |
parent | fccd74c28a45c7450edc52117e9549cc4ea96056 (diff) |
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.idt | 2 | ||||
-rw-r--r-- | scp2/source/ooo/ucrt.scp | 12 |
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 |