summaryrefslogtreecommitdiffstats
path: root/libmpcodecs
diff options
context:
space:
mode:
authorreimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2>2012-09-21 20:20:11 +0000
committerwm4 <wm4@nowhere>2012-10-30 19:50:19 +0100
commit43c7c3c0414c1bc9623b6248eb347922b142b579 (patch)
tree2cd6531143111fdf460b7aaf747d786c09f9909e /libmpcodecs
parent7b5e4a8044588a8e5330bb5c2e94630fe6b80375 (diff)
downloadmpv-43c7c3c0414c1bc9623b6248eb347922b142b579.tar.bz2
mpv-43c7c3c0414c1bc9623b6248eb347922b142b579.tar.xz
vf_screenshot: fix handling of out-of-order slice rendered frames
Fix handling of out-of-order slice rendered frames. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@35208 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libmpcodecs')
-rw-r--r--libmpcodecs/vf_screenshot.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/libmpcodecs/vf_screenshot.c b/libmpcodecs/vf_screenshot.c
index eb961d8118..6bfd84d740 100644
--- a/libmpcodecs/vf_screenshot.c
+++ b/libmpcodecs/vf_screenshot.c
@@ -56,6 +56,7 @@ static int config(struct vf_instance *vf,
static void start_slice(struct vf_instance *vf, mp_image_t *mpi)
{
+ mpi->priv=
vf->dmpi=vf_get_image(vf->next,mpi->imgfmt,
mpi->type, mpi->flags, mpi->width, mpi->height);
if (vf->priv->shot) {
@@ -118,10 +119,7 @@ static int put_image(struct vf_instance *vf, mp_image_t *mpi, double pts)
{
mp_image_t *dmpi = (mp_image_t *)mpi->priv;
- if (mpi->flags & MP_IMGFLAG_DRAW_CALLBACK)
- dmpi = vf->dmpi;
- else
- if(!(mpi->flags&MP_IMGFLAG_DIRECT)){
+ if(!(mpi->flags&(MP_IMGFLAG_DIRECT|MP_IMGFLAG_DRAW_CALLBACK))){
dmpi=vf_get_image(vf->next,mpi->imgfmt,
MP_IMGTYPE_EXPORT, 0,
mpi->width, mpi->height);