mirror of
https://github.com/fluencelabs/musl
synced 2025-04-24 23:02:14 +00:00
use the name UTC instead of GMT for UTC timezone
notes by maintainer: both C and POSIX use the term UTC to specify related functionality, despite POSIX defining it as something more like UT1 or historical (pre-UTC) GMT without leap seconds. neither specifies the associated string for %Z. old choice of "GMT" violated principle of least surprise for users and some applications/tests. use "UTC" instead.
This commit is contained in:
parent
3ec82877e7
commit
eb7f93c4f6
@ -15,7 +15,7 @@ weak_alias(__tzname, tzname);
|
|||||||
|
|
||||||
static char std_name[TZNAME_MAX+1];
|
static char std_name[TZNAME_MAX+1];
|
||||||
static char dst_name[TZNAME_MAX+1];
|
static char dst_name[TZNAME_MAX+1];
|
||||||
const char __gmt[] = "GMT";
|
const char __utc[] = "UTC";
|
||||||
|
|
||||||
static int dst_off;
|
static int dst_off;
|
||||||
static int r0[5], r1[5];
|
static int r0[5], r1[5];
|
||||||
@ -126,7 +126,7 @@ static void do_tzset()
|
|||||||
|
|
||||||
s = getenv("TZ");
|
s = getenv("TZ");
|
||||||
if (!s) s = "/etc/localtime";
|
if (!s) s = "/etc/localtime";
|
||||||
if (!*s) s = __gmt;
|
if (!*s) s = __utc;
|
||||||
|
|
||||||
if (old_tz && !strcmp(s, old_tz)) return;
|
if (old_tz && !strcmp(s, old_tz)) return;
|
||||||
|
|
||||||
@ -136,7 +136,7 @@ static void do_tzset()
|
|||||||
* free so as not to pull it into static programs. Growth
|
* free so as not to pull it into static programs. Growth
|
||||||
* strategy makes it so free would have minimal benefit anyway. */
|
* strategy makes it so free would have minimal benefit anyway. */
|
||||||
i = strlen(s);
|
i = strlen(s);
|
||||||
if (i > PATH_MAX+1) s = __gmt, i = 3;
|
if (i > PATH_MAX+1) s = __utc, i = 3;
|
||||||
if (i >= old_tz_size) {
|
if (i >= old_tz_size) {
|
||||||
old_tz_size *= 2;
|
old_tz_size *= 2;
|
||||||
if (i >= old_tz_size) old_tz_size = i+1;
|
if (i >= old_tz_size) old_tz_size = i+1;
|
||||||
@ -165,12 +165,12 @@ static void do_tzset()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (!map) s = __gmt;
|
if (!map) s = __utc;
|
||||||
}
|
}
|
||||||
if (map && (map_size < 44 || memcmp(map, "TZif", 4))) {
|
if (map && (map_size < 44 || memcmp(map, "TZif", 4))) {
|
||||||
__munmap((void *)map, map_size);
|
__munmap((void *)map, map_size);
|
||||||
map = 0;
|
map = 0;
|
||||||
s = __gmt;
|
s = __utc;
|
||||||
}
|
}
|
||||||
|
|
||||||
zi = map;
|
zi = map;
|
||||||
@ -207,7 +207,7 @@ static void do_tzset()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (!__tzname[0]) __tzname[0] = __tzname[1];
|
if (!__tzname[0]) __tzname[0] = __tzname[1];
|
||||||
if (!__tzname[0]) __tzname[0] = (char *)__gmt;
|
if (!__tzname[0]) __tzname[0] = (char *)__utc;
|
||||||
if (!__daylight) {
|
if (!__daylight) {
|
||||||
__tzname[1] = __tzname[0];
|
__tzname[1] = __tzname[0];
|
||||||
dst_off = __timezone;
|
dst_off = __timezone;
|
||||||
@ -216,7 +216,7 @@ static void do_tzset()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!s) s = __gmt;
|
if (!s) s = __utc;
|
||||||
getname(std_name, &s);
|
getname(std_name, &s);
|
||||||
__tzname[0] = std_name;
|
__tzname[0] = std_name;
|
||||||
__timezone = getoff(&s);
|
__timezone = getoff(&s);
|
||||||
@ -413,7 +413,7 @@ const char *__tm_to_tzname(const struct tm *tm)
|
|||||||
const void *p = tm->__tm_zone;
|
const void *p = tm->__tm_zone;
|
||||||
LOCK(lock);
|
LOCK(lock);
|
||||||
do_tzset();
|
do_tzset();
|
||||||
if (p != __gmt && p != __tzname[0] && p != __tzname[1] &&
|
if (p != __utc && p != __tzname[0] && p != __tzname[1] &&
|
||||||
(!zi || (uintptr_t)p-(uintptr_t)abbrevs >= abbrevs_end - abbrevs))
|
(!zi || (uintptr_t)p-(uintptr_t)abbrevs >= abbrevs_end - abbrevs))
|
||||||
p = "";
|
p = "";
|
||||||
UNLOCK(lock);
|
UNLOCK(lock);
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
#include <errno.h>
|
#include <errno.h>
|
||||||
#include "libc.h"
|
#include "libc.h"
|
||||||
|
|
||||||
extern const char __gmt[];
|
extern const char __utc[];
|
||||||
|
|
||||||
struct tm *__gmtime_r(const time_t *restrict t, struct tm *restrict tm)
|
struct tm *__gmtime_r(const time_t *restrict t, struct tm *restrict tm)
|
||||||
{
|
{
|
||||||
@ -12,7 +12,7 @@ struct tm *__gmtime_r(const time_t *restrict t, struct tm *restrict tm)
|
|||||||
}
|
}
|
||||||
tm->tm_isdst = 0;
|
tm->tm_isdst = 0;
|
||||||
tm->__tm_gmtoff = 0;
|
tm->__tm_gmtoff = 0;
|
||||||
tm->__tm_zone = __gmt;
|
tm->__tm_zone = __utc;
|
||||||
return tm;
|
return tm;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
#include "time_impl.h"
|
#include "time_impl.h"
|
||||||
#include <errno.h>
|
#include <errno.h>
|
||||||
|
|
||||||
extern const char __gmt[];
|
extern const char __utc[];
|
||||||
|
|
||||||
time_t timegm(struct tm *tm)
|
time_t timegm(struct tm *tm)
|
||||||
{
|
{
|
||||||
@ -15,6 +15,6 @@ time_t timegm(struct tm *tm)
|
|||||||
*tm = new;
|
*tm = new;
|
||||||
tm->tm_isdst = 0;
|
tm->tm_isdst = 0;
|
||||||
tm->__tm_gmtoff = 0;
|
tm->__tm_gmtoff = 0;
|
||||||
tm->__tm_zone = __gmt;
|
tm->__tm_zone = __utc;
|
||||||
return t;
|
return t;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user