aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar henry <henry@b3059339-0415-0410-9bf9-f77b7e298cf2>2005-09-11 15:08:48 +0000
committerGravatar henry <henry@b3059339-0415-0410-9bf9-f77b7e298cf2>2005-09-11 15:08:48 +0000
commit9227bb4a99aacfcd18a872d61e22f07e239958ad (patch)
treea7a95245afedef72be2a2ca8150cc4e04d03cd02
parent0e5dd90bf29b8cb2a965eb18c5d692ecf8243815 (diff)
use slices if DR isn't available
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@16457 b3059339-0415-0410-9bf9-f77b7e298cf2
-rw-r--r--libmpcodecs/vf_screenshot.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/libmpcodecs/vf_screenshot.c b/libmpcodecs/vf_screenshot.c
index b85c9a4438..e917cf94cc 100644
--- a/libmpcodecs/vf_screenshot.c
+++ b/libmpcodecs/vf_screenshot.c
@@ -181,6 +181,12 @@ static void get_image(struct vf_instance_s* vf, mp_image_t *mpi){
vf->dmpi= vf_get_image(vf->next, mpi->imgfmt,
mpi->type, mpi->flags | MP_IMGFLAG_READABLE, mpi->width, mpi->height);
+ if((vf->dmpi->flags & MP_IMGFLAG_DRAW_CALLBACK) &&
+ !(vf->dmpi->flags & MP_IMGFLAG_DIRECT)){
+ // use slices if DR isn't possible
+ return;
+ }
+
mpi->planes[0]=vf->dmpi->planes[0];
mpi->stride[0]=vf->dmpi->stride[0];
if(mpi->flags&MP_IMGFLAG_PLANAR){