diff options
-rw-r--r-- | solenv/bin/modules/installer/windows/msiglobal.pm | 5 | ||||
-rw-r--r-- | solenv/bin/modules/installer/windows/msp.pm | 3 | ||||
-rw-r--r-- | solenv/bin/modules/installer/windows/update.pm | 3 |
3 files changed, 10 insertions, 1 deletions
diff --git a/solenv/bin/modules/installer/windows/msiglobal.pm b/solenv/bin/modules/installer/windows/msiglobal.pm index 97edc4035c02..3cbc95239345 100644 --- a/solenv/bin/modules/installer/windows/msiglobal.pm +++ b/solenv/bin/modules/installer/windows/msiglobal.pm @@ -734,6 +734,9 @@ sub create_msi_database $msifilename =~ s/\//\\\\/g; $extraslash = "\\"; } + if ( $^O =~ /linux/i ) { + $extraslash = "\\"; + } my $systemcall = $msidb . " -f " . $idtdirbase . " -d " . $msifilename . " -c " . "-i " . $extraslash . "*"; my $returnvalue = system($systemcall); @@ -988,7 +991,7 @@ sub write_summary_into_msi_database if ($returnvalue) { - $infoline = "ERROR: Could not execute $systemcall\n"; + $infoline = "ERROR: Could not execute $systemcall (return $returnvalue)\n"; push( @installer::globals::logfileinfo, $infoline); } else diff --git a/solenv/bin/modules/installer/windows/msp.pm b/solenv/bin/modules/installer/windows/msp.pm index 0de6effff0b2..d76d1e4981ac 100644 --- a/solenv/bin/modules/installer/windows/msp.pm +++ b/solenv/bin/modules/installer/windows/msp.pm @@ -298,6 +298,9 @@ sub extract_all_tables_from_pcpfile $localworkdir =~ s/\//\\\\/g; $extraslash = "\\"; } + if ( $^O =~ /linux/i ) { + $extraslash = "\\"; + } # Export of all tables by using "*" diff --git a/solenv/bin/modules/installer/windows/update.pm b/solenv/bin/modules/installer/windows/update.pm index 4378ecf89a87..ae6cd4a0693e 100644 --- a/solenv/bin/modules/installer/windows/update.pm +++ b/solenv/bin/modules/installer/windows/update.pm @@ -56,6 +56,9 @@ sub extract_all_tables_from_msidatabase $workdir =~ s/\//\\\\/g; $extraslash = "\\"; } + if ( $^O =~ /linux/i) { + $extraslash = "\\"; + } $systemcall = $msidb . " -d " . $fulldatabasepath . " -f " . $workdir . " -e " . $extraslash . "*"; $returnvalue = system($systemcall); |