diff options
author | Jan Schmidt <thaytan@noraisin.net> | 2012-09-10 22:30:18 -0700 |
---|---|---|
committer | Jan Schmidt <thaytan@noraisin.net> | 2012-09-11 23:16:45 -0700 |
commit | ddd13808b324f89dd4ab8a978331cccff2f161f8 (patch) | |
tree | fb3d9a0110570cba71bd3c9d717b92aa7b96273a /ext | |
parent | 32a15afb81f2e69a69397098ac19a6ac90005c31 (diff) |
mpeg2dec: Hold ref to buffer while mapped
So that the buffer still exists when we go to unmap it later,
even if it got pushed in the meantime.
Diffstat (limited to 'ext')
-rw-r--r-- | ext/mpeg2dec/gstmpeg2dec.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/ext/mpeg2dec/gstmpeg2dec.c b/ext/mpeg2dec/gstmpeg2dec.c index 90ddf22e..42b7e62a 100644 --- a/ext/mpeg2dec/gstmpeg2dec.c +++ b/ext/mpeg2dec/gstmpeg2dec.c @@ -956,6 +956,7 @@ gst_mpeg2dec_handle_frame (GstVideoDecoder * decoder, frame->system_frame_number, GST_TIME_ARGS (frame->pts), GST_TIME_ARGS (frame->duration)); + gst_buffer_ref (buf); if (!gst_buffer_map (buf, &minfo, GST_MAP_READ)) { GST_ERROR_OBJECT (mpeg2dec, "Failed to map input buffer"); return GST_FLOW_ERROR; @@ -1055,6 +1056,7 @@ gst_mpeg2dec_handle_frame (GstVideoDecoder * decoder, done: gst_buffer_unmap (buf, &minfo); + gst_buffer_unref (buf); return ret; } |