mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2025-02-10 21:03:51 +01:00
gtimezone: Fallback to /etc/timezone on Gentoo
On non-systemd Gentoo systems the chosen timezone is expressed in /etc/timezone and /etc/localtime may be a copy of the timezone file instead of symlink. Add this path to the fallback test to not regress dates into UTC.
This commit is contained in:
parent
219bed2304
commit
062f185e3c
@ -447,12 +447,17 @@ zone_info_unix (const gchar *identifier,
|
||||
G_FILE_ERROR_INVAL);
|
||||
g_clear_error (&read_link_err);
|
||||
|
||||
/* Fallback to the content of /var/db/zoneinfo if /etc/localtime is
|
||||
* not a symlink. This is where 'tzsetup' program on FreeBSD and
|
||||
* DragonflyBSD stores the timezone chosen by the user. */
|
||||
if (not_a_symlink && g_file_get_contents ("/var/db/zoneinfo",
|
||||
&resolved_identifier,
|
||||
NULL, NULL))
|
||||
/* Fallback to the content of /var/db/zoneinfo or /etc/timezone
|
||||
* if /etc/localtime is not a symlink. /var/db/zoneinfo is
|
||||
* where 'tzsetup' program on FreeBSD and DragonflyBSD stores
|
||||
* the timezone chosen by the user. /etc/timezone is where user
|
||||
* choice is expressed on Gentoo OpenRC and others. */
|
||||
if (not_a_symlink && (g_file_get_contents ("/var/db/zoneinfo",
|
||||
&resolved_identifier,
|
||||
NULL, NULL) ||
|
||||
g_file_get_contents ("/etc/timezone",
|
||||
&resolved_identifier,
|
||||
NULL, NULL)))
|
||||
g_strchomp (resolved_identifier);
|
||||
else
|
||||
{
|
||||
|
Loading…
x
Reference in New Issue
Block a user