summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThierry Vignaud <tv@mageia.org>2012-09-21 16:15:52 +0000
committerThierry Vignaud <tv@mageia.org>2012-09-21 16:15:52 +0000
commit61f8bb4b7877f4a928452a409e9538e2078fc6b9 (patch)
tree3714ed79b80e329afe7ae33dbd8830d4862b4ae5
parent64ec32945ad3d6b7ed92feb2e3ed19262878944a (diff)
downloaddrakx-backup-do-not-use-61f8bb4b7877f4a928452a409e9538e2078fc6b9.tar
drakx-backup-do-not-use-61f8bb4b7877f4a928452a409e9538e2078fc6b9.tar.gz
drakx-backup-do-not-use-61f8bb4b7877f4a928452a409e9538e2078fc6b9.tar.bz2
drakx-backup-do-not-use-61f8bb4b7877f4a928452a409e9538e2078fc6b9.tar.xz
drakx-backup-do-not-use-61f8bb4b7877f4a928452a409e9538e2078fc6b9.zip
never crash if timezones cannot be listed (mga#6787)
-rw-r--r--perl-install/NEWS3
-rwxr-xr-xperl-install/standalone/drakclock8
2 files changed, 10 insertions, 1 deletions
diff --git a/perl-install/NEWS b/perl-install/NEWS
index 7c6c7d98a..0bb091f7c 100644
--- a/perl-install/NEWS
+++ b/perl-install/NEWS
@@ -1,3 +1,6 @@
+- drakclock:
+ o do not crash if timezones cannot be listed (mga#6787)
+
Version 14.45 - 20 September 2012
- do not crash when trying to guess homedir before running another
diff --git a/perl-install/standalone/drakclock b/perl-install/standalone/drakclock
index 482548d38..0ca3c5b51 100755
--- a/perl-install/standalone/drakclock
+++ b/perl-install/standalone/drakclock
@@ -39,14 +39,20 @@ my $timezone = timezone::read();
my $label_timezone = gtknew('Label', text => $timezone->{timezone} || N("not defined"));
my $button_time = gtknew('Button', text => N("Change Time Zone"));
+my @timezones = eval { timezone::getTimeZones() };
+my $err = $@;
$button_time->signal_connect(clicked => sub {
local $::isEmbedded = 0; # to prevent sub window embedding
- if ($timezone->{timezone} = $in->ask_from_treelist(N("Timezone - DrakClock"), N("Which is your timezone?"), '/', [ timezone::getTimeZones() ], $timezone->{timezone})) {
+ if ($timezone->{timezone} = $in->ask_from_treelist(N("Timezone - DrakClock"), N("Which is your timezone?"), '/', \@timezones, $timezone->{timezone})) {
$timezone->{UTC} = $in->ask_yesorno(N("GMT - DrakClock"), N("Is your hardware clock set to GMT?"), $timezone->{UTC});
timezone::write($timezone);
}
$label_timezone->set_text($timezone->{timezone});
});
+if (!@timezones) {
+ warn "Failed to retrieve timezone list: $err\n";
+ $button_time->set_sensitive(0);
+}
my $drawing_area;