summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorreimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2>2012-08-31 20:08:44 +0000
committerwm4 <wm4@nowhere>2012-10-30 19:50:18 +0100
commit1b57e80cb86f2a0b7127d0cd13d54529eff0fd93 (patch)
tree995790417ec9eeefb5acc199a026bec41a02deb5
parent354b118b289d942c12c7533ef874af55617231c7 (diff)
downloadmpv-1b57e80cb86f2a0b7127d0cd13d54529eff0fd93.tar.bz2
mpv-1b57e80cb86f2a0b7127d0cd13d54529eff0fd93.tar.xz
vd_ffmpeg: detect broken mpi usage count
Detect broken mpi usage count also in decoder. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@35134 b3059339-0415-0410-9bf9-f77b7e298cf2
-rw-r--r--libmpcodecs/vd_ffmpeg.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/libmpcodecs/vd_ffmpeg.c b/libmpcodecs/vd_ffmpeg.c
index 343a26d8d3..948fde2d00 100644
--- a/libmpcodecs/vd_ffmpeg.c
+++ b/libmpcodecs/vd_ffmpeg.c
@@ -585,6 +585,10 @@ static void release_buffer(struct AVCodecContext *avctx, AVFrame *pic)
if (mpi) {
// release mpi (in case MPI_IMGTYPE_NUMBERED is used, e.g. for VDPAU)
mpi->usage_count--;
+ if (mpi->usage_count < 0) {
+ mp_msg(MSGT_DECVIDEO, MSGL_ERR, "Bad mp_image usage count, please report!\n");
+ mpi->usage_count = 0;
+ }
}
if (pic->type != FF_BUFFER_TYPE_USER) {