From 3a53e4407fb9e0c0e0dbf8d147b67f6e36aea5ae Mon Sep 17 00:00:00 2001 From: Michel Dänzer Date: Tue, 6 Jun 2017 18:42:06 +0900 Subject: glamor: Fix temporary pixmap coordinate offsets The previous values happened to work in basic cases, but not in general if the destination is a subwindow or has a border. Fixes crash with xli, which moves a large subwindow inside a smaller parent window for scrolling. No regressions with xterm, x11perf -copyplane or the xscreensaver phosphor hack. Bug: https://bugs.debian.org/857983 Reviewed-by: Keith Packard (cherry picked from commit ffda82ed04d28feae2e001dbd0c32d6c795d90b1) --- glamor/glamor_copy.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'glamor') diff --git a/glamor/glamor_copy.c b/glamor/glamor_copy.c index ff8f44ef1..ed96b2b1e 100644 --- a/glamor/glamor_copy.c +++ b/glamor/glamor_copy.c @@ -230,8 +230,8 @@ glamor_copy_cpu_fbo(DrawablePtr src, goto bail; } - src_pix->drawable.x = -dst->x; - src_pix->drawable.y = -dst->y; + src_pix->drawable.x = dst_xoff; + src_pix->drawable.y = dst_yoff; fbGetDrawable(&src_pix->drawable, src_bits, src_stride, src_bpp, src_xoff, src_yoff); -- cgit v1.2.3