[FFmpeg-cvslog] mov: Fix checking layout and loading padding for cubemaps

Vittorio Giovara git at videolan.org
Wed Mar 8 01:09:33 EET 2017


ffmpeg | branch: master | Vittorio Giovara <vittorio.giovara at gmail.com> | Tue Mar  7 17:29:52 2017 -0500| [ac8c72f8f1f758ae7606db42eac83d04418aec48] | committer: Vittorio Giovara

mov: Fix checking layout and loading padding for cubemaps

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=ac8c72f8f1f758ae7606db42eac83d04418aec48
---

 libavformat/mov.c | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/libavformat/mov.c b/libavformat/mov.c
index cc098cd..d5c3949 100644
--- a/libavformat/mov.c
+++ b/libavformat/mov.c
@@ -4635,7 +4635,7 @@ static int mov_read_sv3d(MOVContext *c, AVIOContext *pb, MOVAtom atom)
 {
     AVStream *st;
     MOVStreamContext *sc;
-    int size;
+    int size, layout;
     int32_t yaw, pitch, roll;
     size_t l = 0, t = 0, r = 0, b = 0;
     size_t padding = 0;
@@ -4699,6 +4699,12 @@ static int mov_read_sv3d(MOVContext *c, AVIOContext *pb, MOVAtom atom)
     avio_skip(pb, 4); /*  version + flags */
     switch (tag) {
     case MKTAG('c','b','m','p'):
+        layout = avio_rb32(pb);
+        if (layout) {
+            av_log(c->fc, AV_LOG_WARNING,
+                   "Unsupported cubemap layout %d\n", layout);
+            return 0;
+        }
         projection = AV_SPHERICAL_CUBEMAP;
         padding = avio_rb32(pb);
         break;



More information about the ffmpeg-cvslog mailing list