summaryrefslogtreecommitdiff
path: root/solenv
diff options
context:
space:
mode:
authorAndras Timar <atimar@suse.com>2012-01-19 23:22:38 +0100
committerFridrich Štrba <fridrich.strba@bluewin.ch>2012-01-20 09:38:01 +0100
commitccc8753d7fc573db29159ab21492b8939f0ddab8 (patch)
tree9215c95a4b99ff1b6b350b0939ee9a6971577f67 /solenv
parent4dd59855872736864c24947ca9886af9472e0980 (diff)
fdo#44915 MSI installer l10n bug
Unfortunately msiinfo.exe has a limitation, it truncates Language property in Summary Information at char position 254. The replacement, WiLangId.vbs does not have this limitation. Signed-off-by: Fridrich Štrba <fridrich.strba@bluewin.ch>
Diffstat (limited to 'solenv')
-rw-r--r--solenv/bin/modules/installer/windows/msiglobal.pm14
1 files changed, 5 insertions, 9 deletions
diff --git a/solenv/bin/modules/installer/windows/msiglobal.pm b/solenv/bin/modules/installer/windows/msiglobal.pm
index 43e6ee3f4cde..a743b451b6d9 100644
--- a/solenv/bin/modules/installer/windows/msiglobal.pm
+++ b/solenv/bin/modules/installer/windows/msiglobal.pm
@@ -982,14 +982,11 @@ sub create_transforms
my $msitran = "msitran.exe"; # Has to be in the path
my $msidb = "msidb.exe"; # Has to be in the path
- my $msiinfo = "msiinfo.exe"; # Has to be in the path
+ my $wilangid = $ENV{WINDOWS_SDK_HOME} . "/Samples/SysMgmt/Msi/scripts/WiLangId.vbs";
my $from = cwd();
- my $architecture = "Intel";
- if (( $allvariableshashref->{'64BITPRODUCT'} ) && ( $allvariableshashref->{'64BITPRODUCT'} == 1 )) { $architecture = "x64"; }
-
- my $templatevalue = "\"" . $architecture . ";1033";
+ my $templatevalue = "1033";
$installdir = installer::converter::make_path_conform($installdir);
@@ -1124,8 +1121,7 @@ sub create_transforms
}
}
- $templatevalue = $templatevalue . "\""; # adding ending '"'
- $systemcall = $msiinfo . " " . $basedbname . " -p " . $templatevalue;
+ $systemcall = "cscript.exe " . $wilangid . " " . $basedbname . " Package " . $templatevalue;
$returnvalue = system($systemcall);
@@ -1134,12 +1130,12 @@ sub create_transforms
if ($returnvalue)
{
- $infoline = "ERROR: Could not execute $msiinfo!\n";
+ $infoline = "ERROR: Could not execute WiLangId.vbs!\n";
push( @installer::globals::logfileinfo, $infoline);
}
else
{
- $infoline = "Success: Executed $msiinfo successfully!\n";
+ $infoline = "Success: Executed WiLangId.vbs successfully!\n";
push( @installer::globals::logfileinfo, $infoline);
}
}