Bug 2230

Summary: XComposite: unmoved bits on screen are not copied to pixmap during resizing
Product: xorg Reporter: Amir Bukhari <amir.bukhari>
Component: Server/GeneralAssignee: Xorg Project Team <xorg-team>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: high CC: basic, roland.mainz
Version: 6.8.1   
Hardware: x86 (IA32)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
bugfix for 2230 none

Description Amir Bukhari 2005-01-05 13:57:45 UTC
normal DDX:miSlideAndSizeWindow copy gravity bits from to new position but the
unmoved bits are not copied. when composite are enable and the window is
redirected these bits are not copied also, what lied to garbage content.
possible solution to copy these bits always when window is redirected with
Composite.
we get this when running Composite with looking glass 3D LG3D.

the following bugfix are made in compare to XORG-6_8_1 branch.
bug fix:

ndex: miwindow.c
===================================================================
RCS file: /cvs/xorg/xc/programs/Xserver/mi/miwindow.c,v
retrieving revision 1.2
diff -u -r1.2 miwindow.c
--- miwindow.c	23 Apr 2004 19:54:26 -0000	1.2
+++ miwindow.c	5 Jan 2005 21:40:46 -0000
@@ -883,7 +883,11 @@
 
 	    /* and move those bits */
 
-	    if (oldpt.x != x || oldpt.y != y)
+	    if (oldpt.x != x || oldpt.y != y
+#ifdef COMPOSITE
+            || pWin->redirectDraw
+#endif
+           )
 		(*pWin->drawable.pScreen->CopyWindow)(pWin, oldpt, gravitate[g]);
 
 	    /* remove any overwritten bits from the remaining useful bits */
Comment 1 Amir Bukhari 2005-01-05 13:59:04 UTC
Created attachment 1638 [details] [review]
bugfix for 2230
Comment 2 Søren Sandmann Pedersen 2005-02-02 09:42:46 UTC
This was committed to HEAD a while back.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.