mirror of
https://github.com/systemd/systemd.git
synced 2024-11-06 16:59:03 +03:00
timedated: show the short timezone name when changing timezones in logs
This commit is contained in:
parent
7ef7e15bd7
commit
8a50b96f81
@ -552,14 +552,17 @@ static int method_set_timezone(sd_bus_message *m, void *userdata, sd_bus_error *
|
|||||||
return sd_bus_error_set_errnof(error, r, "Failed to set time zone: %m");
|
return sd_bus_error_set_errnof(error, r, "Failed to set time zone: %m");
|
||||||
}
|
}
|
||||||
|
|
||||||
/* 2. Tell the kernel our timezone */
|
/* 2. Make glibc notice the new timezone */
|
||||||
|
tzset();
|
||||||
|
|
||||||
|
/* 3. Tell the kernel our timezone */
|
||||||
clock_set_timezone(NULL);
|
clock_set_timezone(NULL);
|
||||||
|
|
||||||
if (c->local_rtc) {
|
if (c->local_rtc) {
|
||||||
struct timespec ts;
|
struct timespec ts;
|
||||||
struct tm *tm;
|
struct tm *tm;
|
||||||
|
|
||||||
/* 3. Sync RTC from system clock, with the new delta */
|
/* 4. Sync RTC from system clock, with the new delta */
|
||||||
assert_se(clock_gettime(CLOCK_REALTIME, &ts) == 0);
|
assert_se(clock_gettime(CLOCK_REALTIME, &ts) == 0);
|
||||||
assert_se(tm = localtime(&ts.tv_sec));
|
assert_se(tm = localtime(&ts.tv_sec));
|
||||||
clock_set_hwclock(tm);
|
clock_set_hwclock(tm);
|
||||||
@ -568,7 +571,9 @@ static int method_set_timezone(sd_bus_message *m, void *userdata, sd_bus_error *
|
|||||||
log_struct(LOG_INFO,
|
log_struct(LOG_INFO,
|
||||||
"MESSAGE_ID=" SD_MESSAGE_TIMEZONE_CHANGE_STR,
|
"MESSAGE_ID=" SD_MESSAGE_TIMEZONE_CHANGE_STR,
|
||||||
"TIMEZONE=%s", c->zone,
|
"TIMEZONE=%s", c->zone,
|
||||||
LOG_MESSAGE("Changed time zone to '%s'.", c->zone),
|
"TIMEZONE_SHORTNAME=%s", tzname[daylight],
|
||||||
|
"DAYLIGHT=%i", daylight,
|
||||||
|
LOG_MESSAGE("Changed time zone to '%s' (%s).", c->zone, tzname[daylight]),
|
||||||
NULL);
|
NULL);
|
||||||
|
|
||||||
(void) sd_bus_emit_properties_changed(sd_bus_message_get_bus(m), "/org/freedesktop/timedate1", "org.freedesktop.timedate1", "Timezone", NULL);
|
(void) sd_bus_emit_properties_changed(sd_bus_message_get_bus(m), "/org/freedesktop/timedate1", "org.freedesktop.timedate1", "Timezone", NULL);
|
||||||
|
Loading…
Reference in New Issue
Block a user