Bug 3785

Summary: Damage ignores clipping information
Product: xorg Reporter: Jorn Baayen <jorn.baayen>
Component: Server/GeneralAssignee: Xorg Project Team <xorg-team>
Status: RESOLVED MOVED QA Contact: Xorg Project Team <xorg-team>
Severity: normal    
Priority: high CC: keithp
Version: git   
Hardware: x86 (IA32)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
Patch against xserver
none
Patch against xc none

Description Jorn Baayen 2005-07-15 19:20:03 UTC
Damage presently ignores GC clipping information, causing damage to be
overreported. A fix has been committed to kdrive:

http://cvs.freedesktop.org/xserver/xserver/miext/damage/damage.c?r1=1.14&r2=1.15

To this report I'll attach a patch that fixes the same issue for xorg damage,
taking out an earlier fix that partially fixed overreporting. The previous fix
interesected against the window clip list according to the sub window mode. This
is not needed for the new fix because pGC->pCompositeClip is the intersection
between the window (depending on the sub window mode) and client clips already.

One thing I don't understand about the previous fix is why it only clipped when
there was no backing store ?
Comment 1 Jorn Baayen 2005-07-15 19:20:33 UTC
Created attachment 3089 [details] [review]
Debug patch with fix
Comment 2 Keith Packard 2005-07-28 15:14:21 UTC
ah, backing store is evil. composite clip doesn't include the region preserved
in backing store. we need to reimplement backing store in terms of composite and
get rid of the existing horror show. so, we need to not clip damage at all when
backing store is enabled, so the fix in xserver is incomplete.
Comment 3 Jorn Baayen 2005-07-28 17:53:56 UTC
Created attachment 3175 [details] [review]
Proposed patch

New patch does not clip if backing store is enabled.
Comment 4 Jorn Baayen 2005-07-28 17:56:43 UTC
Created attachment 3176 [details] [review]
xls_locale_en_US

This patch adds the backing store exception to xserver damage. If this looks
good, I can get mallum to commit it again.
Comment 5 Jorn Baayen 2005-07-29 00:28:50 UTC
Created attachment 3178 [details] [review]
fixes it

Only cast to WindowPtr when actually dealing with a window.
Comment 6 Jorn Baayen 2005-07-29 00:29:48 UTC
Created attachment 3179 [details]
The Bulgarian translation

See last comment.
Comment 7 Alan Coopersmith 2005-10-09 00:50:58 UTC
Previously attached patches lost in bugzilla disk death - links now point to 
other files.   Please re-attach.
Comment 8 Jorn Baayen 2005-10-09 09:04:36 UTC
Created attachment 3523 [details] [review]
Patch against xserver
Comment 9 Jorn Baayen 2005-10-09 09:04:59 UTC
Created attachment 3524 [details] [review]
Patch against xc
Comment 10 Daniel Stone 2007-02-27 01:27:19 UTC
Sorry about the phenomenal bug spam, guys.  Adding xorg-team@ to the QA contact so bugs don't get lost in future.
Comment 11 Michel Dänzer 2009-09-01 01:11:31 UTC
(In reply to comment #2)
> ah, backing store is evil. composite clip doesn't include the region preserved
> in backing store. we need to reimplement backing store in terms of composite and
> get rid of the existing horror show. so, we need to not clip damage at all when
> backing store is enabled, so the fix in xserver is incomplete.

Backing store has been reimplemented in terms of Composite, so is this valid now?

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.