This is similar to an existing check for the second-last frame
from 062421e3.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: [email protected]
---
 libavcodec/eacmv.c |    7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/libavcodec/eacmv.c b/libavcodec/eacmv.c
index cf19a85..6236bd2 100644
--- a/libavcodec/eacmv.c
+++ b/libavcodec/eacmv.c
@@ -120,9 +120,10 @@ static void cmv_decode_inter(CmvContext *s, AVFrame 
*frame, const uint8_t *buf,
         }else{  /* inter using last frame as reference */
             int xoffset = (buf[i] & 0xF) - 7;
             int yoffset = ((buf[i] >> 4)) - 7;
-            cmv_motcomp(frame->data[0], frame->linesize[0],
-                      s->last_frame->data[0], s->last_frame->linesize[0],
-                      x*4, y*4, xoffset, yoffset, s->avctx->width, 
s->avctx->height);
+            if (s->last_frame->data[0])
+                cmv_motcomp(frame->data[0], frame->linesize[0],
+                            s->last_frame->data[0], s->last_frame->linesize[0],
+                            x*4, y*4, xoffset, yoffset, s->avctx->width, 
s->avctx->height);
         }
         i++;
     }
-- 
1.7.9.4

_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to