Fix timezone to zero for UTC time values

https://github.com/Hamlib/Hamlib/issues/851
pull/892/head
Mike Black W9MDB 2021-12-06 11:57:45 -06:00
rodzic cb80f2b18d
commit c67f21bf96
1 zmienionych plików z 4 dodań i 1 usunięć

Wyświetl plik

@ -2430,23 +2430,26 @@ char *date_strget(char *buf, int buflen, int localtime)
time_t t;
struct timeval tv;
struct tm result;
int mytimezone;
t = time(NULL);
if (localtime)
{
mytm = localtime_r(&t, &result);
mytimezone = timezone;
}
else
{
mytm = gmtime_r(&t, &result);
mytimezone = 0;
}
strftime(buf, buflen, "%Y-%m-%dT%H:%M:%S.", mytm);
gettimeofday(&tv, NULL);
snprintf(tmpbuf, sizeof(tmpbuf), "%06ld", (long)tv.tv_usec);
strcat(buf, tmpbuf);
snprintf(tmpbuf, sizeof(tmpbuf), "%s%04d", timezone >=0? "-":"+", ((int)abs(timezone)/3600)*100);
snprintf(tmpbuf, sizeof(tmpbuf), "%s%04d", mytimezone >=0? "-":"+", ((int)abs(mytimezone)/3600)*100);
strcat(buf, tmpbuf);
return buf;
}