projects
/
musl
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fix asctime day/month names not to vary by locale
[musl]
/
src
/
time
/
gmtime_r.c
diff --git
a/src/time/gmtime_r.c
b/src/time/gmtime_r.c
index
5b565a6
..
8cbdadc
100644
(file)
--- a/
src/time/gmtime_r.c
+++ b/
src/time/gmtime_r.c
@@
-1,10
+1,19
@@
-#include <time.h>
+#include "time_impl.h"
+#include <errno.h>
+#include "libc.h"
-#include "__time.h"
+extern const char __gmt[];
-struct tm *
gmtime_r(const time_t *t, struct tm *result
)
+struct tm *
__gmtime_r(const time_t *restrict t, struct tm *restrict tm
)
{
{
- __time_to_tm(*t, result);
- result->tm_isdst = 0;
- return result;
+ if (__secs_to_tm(*t, tm) < 0) {
+ errno = EOVERFLOW;
+ return 0;
+ }
+ tm->tm_isdst = 0;
+ tm->__tm_gmtoff = 0;
+ tm->__tm_zone = __gmt;
+ return tm;
}
}
+
+weak_alias(__gmtime_r, gmtime_r);