/
niceSOFT
/
gawk
Обзор
Документация
Войти
/
niceSOFT
/
gawk
Код
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
missing_d/timegm.c
31 строка
658 B
John Malmberg
Fixes for building on OpenVMS
09 янв 2019, 17:29
09 янв 2019, 17:29
68e8a8a
Код
Авторство
О чём код?
#include <time.h> #include <stdlib.h> /* timegm -- based on Linux timegm man page */ time_t timegm(struct tm *tm) { time_t ret; char *tz = getenv("TZ"); const char *tzreq = "UTC+0"; /* more portable than ""? */ if (tz) tz = estrdup(tz, strlen(tz)); if (setenv("TZ", tzreq, 1) < 0) { warning(_("setenv(TZ, %s) failed (%s)"), tzreq, strerror(errno)); return -1; } tzset(); ret = mktime(tm); if (tz) { if (setenv("TZ", tz, 1) < 0) fatal(_("setenv(TZ, %s) restoration failed (%s)"), tz, strerror(errno)); free(tz); } else { if (unsetenv("TZ") < 0) fatal(_("unsetenv(TZ) failed (%s)"), strerror(errno)); } tzset(); return ret; }