heydowns <[EMAIL PROTECTED]> added the comment:
The null pointer causing the failure is last_picture.data (or next, presumably).
Looks like its seeking to a B-type picture, but doesn't have last/next pictures
to work from. last_picture_ptr, next_picture_ptr are non null. Looking at
mpeg12 decoder, flush nulls out last and next picture pointers. H264 decoder
doesn't (it doesn't use these internall).
The attached fixes it here. Since h264 is using mpegvideo's picture management
and such, seems reasonable to call mpegvideo's flush as well.
----------
substatus: reproduced -> analyzed
______________________________________________________
FFmpeg issue tracker <[EMAIL PROTECTED]>
<https://roundup.mplayerhq.hu/roundup/ffmpeg/issue189>
______________________________________________________
Index: libavcodec/h264.c
===================================================================
--- libavcodec/h264.c (revision 11047)
+++ libavcodec/h264.c (working copy)
@@ -3342,6 +3342,7 @@
if(h->s.current_picture_ptr)
h->s.current_picture_ptr->reference= 0;
h->s.first_field= 0;
+ ff_mpeg_flush(avctx);
}
/**