# HG changeset patch # User Olaf Wintermann # Date 1453572248 -3600 # Node ID 7ba3c97b31ffd8100831b6a2a99d295f8111dc9f # Parent c238e0017257dae0036423c1caebeb8e89f823ae fixed FreeBSD build diff -r c238e0017257 -r 7ba3c97b31ff libidav/utils.c --- a/libidav/utils.c Sun Jan 17 18:45:17 2016 +0100 +++ b/libidav/utils.c Sat Jan 23 19:04:08 2016 +0100 @@ -136,7 +136,11 @@ tparts.tm_isdst = -1; return mktime(&tparts); } else if(!sstrcmp(tzinfo, S("Z"))) { +#ifdef __FreeBSD__ + return timegm(&tparts); +#else return mktime(&tparts) - timezone; +#endif } else if(tzinfo.ptr[0] == '+' || tzinfo.ptr[0] == '-') { int sign = (tzinfo.ptr[0] == '+') ? -1 : 1; @@ -147,8 +151,11 @@ extractval(tzinfo, conv, ':'); val = atol(conv); val = 60 * (val / 100) + (val % 100); - - return mktime(&tparts) - timezone + (time_t) (60 * val * sign); +#ifdef __FreeBSD__ + return timegm(&tparts) + (time_t) (60 * val * sign); +#else + return mktime(&tparts) - timezone + (time_t) (60 * val * sign); +#endif } } else { return 0;