2007-09-19 10:59:18 |
Nikola M |
bug |
|
|
added bug |
2007-09-20 01:13:12 |
Colin Watson |
tzsetup: status |
New |
Incomplete |
|
2007-09-20 01:13:12 |
Colin Watson |
tzsetup: assignee |
|
kamion |
|
2008-10-28 20:43:28 |
Nikola M |
bug |
|
|
added attachment 'Serbia-Belgrade-error.png' (Serbia-Belgrade-error.png) |
2008-11-20 14:37:33 |
Colin Watson |
tzsetup: status |
Incomplete |
Triaged |
|
2008-11-20 14:37:33 |
Colin Watson |
tzsetup: title |
Bug #140934 in tzsetup (Ubuntu): "Default Time zone/City for Serbia(Europe) Should be Belgrade" |
Bug #140934 in system-tools-backends (Ubuntu): "Default Time zone/City for Serbia(Europe) Should be Belgrade" |
|
2008-11-20 14:37:33 |
Colin Watson |
tzsetup: importance |
Undecided |
Medium |
|
2008-11-20 14:37:33 |
Colin Watson |
tzsetup: bugtargetname |
tzsetup (Ubuntu) |
system-tools-backends (Ubuntu) |
|
2008-11-20 14:37:33 |
Colin Watson |
tzsetup: statusexplanation |
I can't reproduce this with a current Gutsy daily build (but to my knowledge nothing changed here since the last Tribe release); I selected English as my language, Serbia as my country, and got Belgrade as my timezone. Are you seeing the timezone in some piece of graphical user interface? What does /etc/timezone say? Sarajevo is the same timezone as Belgrade, so maybe something is displaying one as the other. |
This is a system-tools-backends bug. Observe the following code in /usr/share/system-tools-backends-2.0/scripts/Time/TimeDate.pm:
*TZLIST = &Utils::File::open_read_from_names($zoneinfo_dir . "/zone.tab");
if (not *TZLIST) { return; }
&Utils::Report::do_report ("time_timezone_scan");
# Get the filesize for /etc/localtime so that we don't have to execute
# a diff for every file, only for file with the correct size. This speeds
# up loading
$size_search = (stat ($local_time_file))[7];
while (<TZLIST>)
{
if (/^\#/) { next; } # Skip comments.
($d, $d, $zone) = split /[\t ]+/, $_; # Get 3rd column.
chomp $zone; # Remove linefeeds.
# See if this zone file matches the installed one.
&Utils::Report::do_report ("time_timezone_cmp", $zone);
$size_test = (stat("$zoneinfo_dir/$zone"))[7];
if ($size_test eq $size_search)
{
if (!&Utils::File::run ("diff $zoneinfo_dir/$zone $local_time_file"))
{
# Found a match.
last;
}
}
$zone = "";
}
close (TZLIST);
return $zone;
This means that the first zone listed in /usr/share/zoneinfo/zone.tab whose zone file matches the contents of /etc/localtime (since we don't set up /etc/localtime as a symlink for various other good reasons) will be used. In this case, that happens to be Europe/Sarajevo, because Europe/Sarajevo is a copy of Europe/Belgrade and is the default for Bosnia, which comes before Serbia in zone.tab.
I think the correct fix for this bug is to attempt to open /etc/timezone and check whether the timezone named there matches the contents of /etc/localtime, before doing this exhaustive search. That would be faster as well.
|
|
2008-11-20 14:37:33 |
Colin Watson |
tzsetup: bugtargetdisplayname |
tzsetup (Ubuntu) |
system-tools-backends (Ubuntu) |
|
2008-11-20 14:38:03 |
Colin Watson |
system-tools-backends: assignee |
kamion |
|
|
2008-11-20 14:38:03 |
Colin Watson |
system-tools-backends: statusexplanation |
This is a system-tools-backends bug. Observe the following code in /usr/share/system-tools-backends-2.0/scripts/Time/TimeDate.pm:
*TZLIST = &Utils::File::open_read_from_names($zoneinfo_dir . "/zone.tab");
if (not *TZLIST) { return; }
&Utils::Report::do_report ("time_timezone_scan");
# Get the filesize for /etc/localtime so that we don't have to execute
# a diff for every file, only for file with the correct size. This speeds
# up loading
$size_search = (stat ($local_time_file))[7];
while (<TZLIST>)
{
if (/^\#/) { next; } # Skip comments.
($d, $d, $zone) = split /[\t ]+/, $_; # Get 3rd column.
chomp $zone; # Remove linefeeds.
# See if this zone file matches the installed one.
&Utils::Report::do_report ("time_timezone_cmp", $zone);
$size_test = (stat("$zoneinfo_dir/$zone"))[7];
if ($size_test eq $size_search)
{
if (!&Utils::File::run ("diff $zoneinfo_dir/$zone $local_time_file"))
{
# Found a match.
last;
}
}
$zone = "";
}
close (TZLIST);
return $zone;
This means that the first zone listed in /usr/share/zoneinfo/zone.tab whose zone file matches the contents of /etc/localtime (since we don't set up /etc/localtime as a symlink for various other good reasons) will be used. In this case, that happens to be Europe/Sarajevo, because Europe/Sarajevo is a copy of Europe/Belgrade and is the default for Bosnia, which comes before Serbia in zone.tab.
I think the correct fix for this bug is to attempt to open /etc/timezone and check whether the timezone named there matches the contents of /etc/localtime, before doing this exhaustive search. That would be faster as well.
|
|
|
2008-12-16 07:28:58 |
Martin Pitt |
bug |
|
|
assigned to system-tools-backends |
2008-12-16 07:29:22 |
Martin Pitt |
system-tools-backends: status |
Triaged |
In Progress |
|
2008-12-16 07:29:22 |
Martin Pitt |
system-tools-backends: assignee |
|
pitti |
|
2008-12-16 10:26:36 |
Bug Watch Updater |
system-tools-backends: status |
Unknown |
New |
|
2009-01-27 12:48:08 |
Martin Pitt |
system-tools-backends: status |
In Progress |
Confirmed |
|
2009-04-16 13:08:59 |
Martin Pitt |
system-tools-backends (Ubuntu): status |
Confirmed |
Triaged |
|
2009-04-29 17:48:43 |
Savvas Radevic |
marked as duplicate |
|
43644 |
|
2009-07-26 18:33:26 |
Bug Watch Updater |
system-tools-backends: status |
New |
Confirmed |
|
2009-09-21 16:47:33 |
Bug Watch Updater |
system-tools-backends: status |
Confirmed |
Fix Released |
|