avformat/img2enc: Use localtime_r() for thread saftey
authorMichael Niedermayer <michaelni@gmx.at>
Sun, 2 Nov 2014 19:09:16 +0000 (20:09 +0100)
committerMichael Niedermayer <michaelni@gmx.at>
Sun, 2 Nov 2014 19:09:16 +0000 (20:09 +0100)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
libavformat/img2enc.c

index b64ef07..2b8b2d0 100644 (file)
@@ -26,6 +26,7 @@
 #include "libavutil/log.h"
 #include "libavutil/opt.h"
 #include "libavutil/pixdesc.h"
+#include "libavutil/time_internal.h"
 #include "avformat.h"
 #include "avio_internal.h"
 #include "internal.h"
@@ -83,9 +84,9 @@ static int write_packet(AVFormatContext *s, AVPacket *pkt)
             av_strlcpy(filename, img->path, sizeof(filename));
         } else if (img->use_strftime) {
             time_t now0;
-            struct tm *tm;
+            struct tm *tm, tmpbuf;
             time(&now0);
-            tm = localtime(&now0);
+            tm = localtime_r(&now0, &tmpbuf);
             if (!strftime(filename, sizeof(filename), img->path, tm)) {
                 av_log(s, AV_LOG_ERROR, "Could not get frame filename with strftime\n");
                 return AVERROR(EINVAL);