diff options
author | Mike Kaganski <mike.kaganski@collabora.com> | 2022-10-29 23:38:12 +0300 |
---|---|---|
committer | Mike Kaganski <mike.kaganski@collabora.com> | 2022-10-30 09:38:04 +0100 |
commit | 8c6467a785037309d2a2cec56c8e38cf52da0aee (patch) | |
tree | e63c8562669ed1217b9f5c78de21d7e36002590f /solenv/bin/modules/installer.pm | |
parent | 9f0103b3a1ca6dcffcf064736b57d4bf7bbd887b (diff) |
MSI: fix handling empty directories
Such empty directories are added e.g. by setup_native/Package_packinfo.mk
when using these configuration:
./autogen.sh --with-external-tar=/cygdrive/c/sources/lo-externalsrc --with-junit=/cygdrive/c/sources/junit-4.10.jar --with-ant-home=/cygdrive/c/sources/apache-ant-1.9.5 --enable-pch --disable-ccache --with-visual-studio=2019 --with-jdk-home="C:\Program Files\Microsoft\jdk-17.0.4.101-hotspot" --with-package-format=msi --with-ucrt-dir=/cygdrive/c/cygwin64/opt/ucrt/
Making after that produced this error:
: *****************************************************************
: ERROR: Reading from filehandle failed at C:/sources/core/solenv/bin/modules/installer/windows/file.pm line 967.
: *****************************************************************
because it tried to create MD5 hash of a directory.
Change-Id: I7d2a6dc989f823fabaca1bef07a68ba964ffe34b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/142026
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Diffstat (limited to 'solenv/bin/modules/installer.pm')
-rw-r--r-- | solenv/bin/modules/installer.pm | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/solenv/bin/modules/installer.pm b/solenv/bin/modules/installer.pm index 17ce8f7621ce..99866b2fb7f2 100644 --- a/solenv/bin/modules/installer.pm +++ b/solenv/bin/modules/installer.pm @@ -650,8 +650,8 @@ sub run { # It will be possible, that in the setup script only those directories have to be defined, # that have a CREATE flag. All other directories are created, if they contain at least one file. - my ($directoriesforepmarrayref, $alldirectoryhash) = installer::scriptitems::collect_directories_from_filesarray($filesinproductlanguageresolvedarrayref, $unixlinksinproductlanguageresolvedarrayref); - ($directoriesforepmarrayref, $alldirectoryhash) = installer::scriptitems::collect_directories_with_create_flag_from_directoryarray($dirsinproductlanguageresolvedarrayref, $alldirectoryhash); + my $alldirectoryhash = installer::scriptitems::collect_directories_from_filesarray($filesinproductlanguageresolvedarrayref, $unixlinksinproductlanguageresolvedarrayref); + my $directoriesforepmarrayref = installer::scriptitems::collect_directories_with_create_flag_from_directoryarray($dirsinproductlanguageresolvedarrayref, $alldirectoryhash); ######################################################### # language dependent scpactions part @@ -802,8 +802,8 @@ sub run { @{$folderitemsinproductlanguageresolvedarrayref} = (); # no folderitems in languagepacks # Collecting the directories again, to include only the language specific directories - ($directoriesforepmarrayref, $alldirectoryhash) = installer::scriptitems::collect_directories_from_filesarray($filesinproductlanguageresolvedarrayref, $unixlinksinproductlanguageresolvedarrayref); - ($directoriesforepmarrayref, $alldirectoryhash) = installer::scriptitems::collect_directories_with_create_flag_from_directoryarray($dirsinproductlanguageresolvedarrayref, $alldirectoryhash); + $alldirectoryhash = installer::scriptitems::collect_directories_from_filesarray($filesinproductlanguageresolvedarrayref, $unixlinksinproductlanguageresolvedarrayref); + $directoriesforepmarrayref = installer::scriptitems::collect_directories_with_create_flag_from_directoryarray($dirsinproductlanguageresolvedarrayref, $alldirectoryhash); @$directoriesforepmarrayref = sort { $a->{"HostName"} cmp $b->{"HostName"} } @$directoriesforepmarrayref; if ( $installer::globals::iswindowsbuild ) @@ -823,8 +823,8 @@ sub run { @{$folderitemsinproductlanguageresolvedarrayref} = (); # no folderitems in helppacks # Collecting the directories again, to include only the language specific directories - ($directoriesforepmarrayref, $alldirectoryhash) = installer::scriptitems::collect_directories_from_filesarray($filesinproductlanguageresolvedarrayref, $unixlinksinproductlanguageresolvedarrayref); - ($directoriesforepmarrayref, $alldirectoryhash) = installer::scriptitems::collect_directories_with_create_flag_from_directoryarray($dirsinproductlanguageresolvedarrayref, $alldirectoryhash); + $alldirectoryhash = installer::scriptitems::collect_directories_from_filesarray($filesinproductlanguageresolvedarrayref, $unixlinksinproductlanguageresolvedarrayref); + $directoriesforepmarrayref = installer::scriptitems::collect_directories_with_create_flag_from_directoryarray($dirsinproductlanguageresolvedarrayref, $alldirectoryhash); @$directoriesforepmarrayref = sort { $a->{"HostName"} cmp $b->{"HostName"} } @$directoriesforepmarrayref; if ( $installer::globals::iswindowsbuild ) |