Find a file
Søren Sandmann Pedersen 4975887a30 Remove geometry arguments from miSourceValidate()
The only user of the geometry coordinates is the software sprite code,
which uses them to remove the pointer whenever the window beneath is
being used as a source. However, using Window pictures as a source is
extremely rare (let alone *partial* windows), so there is no harm done
in just validating all of the drawable.

Additionally, the miSourceValidate() function was buggy in at least
three respects:

(a) It added drawable->{x,y} before calling down, which is wrong since
    the misprite code already adds them in its check. (Alternatively,
    the misprite code is wrong, but there are actual users who would
    notice if that code was broken).

(b) It didn't account for the width of the interpolation filter, so if
    the Picture had a bilinear or convolution filter, the edges
    surrounding the source area would not be validated.

(c) It didn't validate alpha maps.

Finally, computing the bounding box of the transform on every
composite request was a real performance issue in pixman, so
presumably it could be one here as well.

This patch changes miSourceValidate() to simply validate all of the
underlying drawable.

Reviewed-by: Adam Jackson <ajax@redhat.com>
Reviewed-by: Keith Packard <keithp@keithp.com>
Signed-off-by: Soren Sandmann <ssp@redhat.com>
(cherry picked from commit 57b35adaed)
2012-02-10 15:48:11 -08:00
composite composite: Support updating an arbitrary subtree 2011-01-05 11:57:31 -08:00
config hal: free tmp_val in one missing case 2012-01-18 11:26:57 -08:00
damageext Set DamageSetReportAfterOp to true for the damage extension 2010-11-10 15:51:27 -08:00
dbe Clean up memory better when GetVisualInfo fails in ProcDbeGetVisualInfo 2011-05-13 23:36:28 -07:00
dix dix: Tune dixLookupDrawable for success 2012-01-18 11:37:52 -08:00
doc man: refactor common code in the man pages makefiles 2011-01-18 15:11:10 -08:00
exa EXA/mixed: Update sys_pitch in MPH even when there's no system memory copy. 2011-08-10 15:00:47 -07:00
fb Remove geometry arguments from miSourceValidate() 2012-02-10 15:48:11 -08:00
glx glx: Remove a few lingering traces of __GLXscreen.GLXVersion 2011-07-16 13:19:27 -07:00
hw XQuartz: Bump bundle version to 2.6.4 2012-01-18 11:43:56 -08:00
include input: add POINTER_NORAW to avoid generation of raw events (#30068) 2011-07-09 14:28:28 -07:00
m4 Add macro for detecting thread local storage support. 2011-01-08 08:42:49 -08:00
mi mi/mibitblt: Fix an overflow bug of bit shift. 2012-01-18 11:38:07 -08:00
miext rootless: Fix a server crash when choosing a color with the gimp color wheel 2012-01-18 11:12:23 -08:00
os os: don't ignore failure from dladdr 2012-01-18 11:37:08 -08:00
randr randr: Compare all the bytes in RRPostPendingProperties 2011-08-04 22:56:58 -07:00
record Only free pContext once when AddResource fails in ProcRecordCreateContext 2011-05-13 23:35:43 -07:00
render Remove geometry arguments from miSourceValidate() 2012-02-10 15:48:11 -08:00
test test: don't test for double alignment on i386. (#36986) 2011-06-11 10:05:43 -07:00
Xext xace: ricer tuning for XaceHook 2012-01-18 11:37:36 -08:00
xfixes xfixes: don't dereference a NULL cursor 2012-01-18 11:28:45 -08:00
Xi Xi: assign correct grab_mode/other_device_mode in XI2 passive grabs 2012-01-18 11:36:22 -08:00
xkb xkb: add missing swaps for xkbGetDeviceInfoReply 2011-10-26 00:47:46 -07:00
.gitignore .gitignore: use common defaults with custom section #24239 2009-11-11 21:40:20 -08:00
autogen.sh autogen.sh: Pass --force to autoreconf 2008-07-22 16:55:26 +03:00
configure.ac configure.ac: Make Xephyr dependency error message more informative 2012-01-18 11:27:57 -08:00
COPYING Add asprintf() implementation for platforms without it 2010-12-07 11:10:35 -08:00
fix-miregion Change region implementation names to eliminate the 'mi' prefix 2010-06-05 17:47:32 -07:00
fix-miregion-private Change region implementation names to eliminate the 'mi' prefix 2010-06-05 17:47:32 -07:00
fix-patch-whitespace Rename region macros to eliminate screen argument 2010-06-05 18:59:00 -07:00
fix-region Rename region macros to eliminate screen argument 2010-06-05 18:59:00 -07:00
Makefile.am remove dolt 2010-09-30 17:44:59 -07:00
manpages.am man: refactor common code in the man pages makefiles 2011-01-18 15:11:10 -08:00
README packaging: provide a default README file #24206 2010-01-27 14:00:17 -08:00
xorg-server.m4 macros: use PKG_CONFIG variable rather than executable name 2010-01-07 12:57:23 -08:00
xorg-server.pc.in config: declare xserver private dependencies in xorg-server.pc 2010-06-22 11:34:47 -07:00

					X Server

The X server accepts requests from client applications to create windows,
which are (normally rectangular) "virtual screens" that the client program
can draw into.

Windows are then composed on the actual screen by the X server
(or by a separate composite manager) as directed by the window manager,
which usually communicates with the user via graphical controls such as buttons
and draggable titlebars and borders.

For a comprehensive overview of X Server and X Window System, consult the
following article:
http://en.wikipedia.org/wiki/X_server

All questions regarding this software should be directed at the
Xorg mailing list:

        http://lists.freedesktop.org/mailman/listinfo/xorg

Please submit bug reports to the Xorg bugzilla:

        https://bugs.freedesktop.org/enter_bug.cgi?product=xorg

The master development code repository can be found at:

        git://anongit.freedesktop.org/git/xorg/xserver

        http://cgit.freedesktop.org/xorg/xserver

For patch submission instructions, see:

	http://www.x.org/wiki/Development/Documentation/SubmittingPatches

For more information on the git code manager, see:

        http://wiki.x.org/wiki/GitPage