summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--perl-install/NEWS2
-rw-r--r--perl-install/lang.pm12
2 files changed, 7 insertions, 7 deletions
diff --git a/perl-install/NEWS b/perl-install/NEWS
index 9a7f2dc9b..a49007f52 100644
--- a/perl-install/NEWS
+++ b/perl-install/NEWS
@@ -5,6 +5,8 @@
o give console rights for current session when renaming user
- drakdvb:
o install w_scan if needed (#48242)
+- localdrake/finish-install:
+ o fix reading default input method setting
- list ath9k in wireless modules category
Version 11.91 - 25 February 2009
diff --git a/perl-install/lang.pm b/perl-install/lang.pm
index 46d0dcbf1..291568679 100644
--- a/perl-install/lang.pm
+++ b/perl-install/lang.pm
@@ -1083,13 +1083,11 @@ sub read {
my $locale = system_locales_to_ourlocale($h{LC_MESSAGES} || 'en_US', $h{LC_MONETARY} || 'en_US');
if (find { $h{$_} } @IM_i18n_fields) {
- my @l = grep { !/^scim/ || /\(default\)/ } keys %IM_config;
- foreach my $field ('XMODIFIERS', 'XIM_PROGRAM') {
- $h{$field} or next;
- my @m = grep { $h{$field} eq $IM_config{$_}{$field} } @l or last;
- @l = @m;
- }
- $locale->{IM} = $l[0] if @l;
+ my $current_IM = find {
+ my $i = $IM_config{$_};
+ every { !defined $i->{$_} || $h{$_} eq $i->{$_} } ('GTK_IM_MODULE', 'XMODIFIERS', 'XIM_PROGRAM');
+ } keys %IM_config;
+ $locale->{IM} = $current_IM if $current_IM;
}
$locale;
}