avformat: Interpret times in ff_iso8601_to_unix_time as UTC
authorMartin Storsjö <martin@martin.st>
Mon, 7 Nov 2011 21:32:21 +0000 (23:32 +0200)
committerMartin Storsjö <martin@martin.st>
Wed, 16 Nov 2011 09:22:42 +0000 (11:22 +0200)
This function is used in muxers for parsing the 'creation_time'
metadata key, for converting it to a time value.

This makes it match the behaviour of the exported 'creation_time'
metadata from demuxers, where it is in UTC, too.

Signed-off-by: Martin Storsjö <martin@martin.st>
libavformat/utils.c

index 11cb4f8..dfcac20 100644 (file)
@@ -32,6 +32,7 @@
 #include "id3v2.h"
 #include "libavutil/avstring.h"
 #include "libavutil/mathematics.h"
+#include "libavutil/parseutils.h"
 #include "riff.h"
 #include "audiointerleave.h"
 #include "url.h"
@@ -3944,7 +3945,7 @@ int64_t ff_iso8601_to_unix_time(const char *datestr)
 #if HAVE_STRPTIME
     struct tm time = {0};
     strptime(datestr, "%Y - %m - %dT%T", &time);
-    return mktime(&time);
+    return av_timegm(&time);
 #else
     av_log(NULL, AV_LOG_WARNING, "strptime() unavailable on this system, cannot convert "
                                  "the date string.\n");