xf86-video-geode: Changes to 'master'

Mart Raudsepp leio at kemper.freedesktop.org
Mon Nov 19 22:22:26 PST 2012


 src/lx_exa.c |   40 ++++++++++++++++++++++++++++++++++++----
 1 file changed, 36 insertions(+), 4 deletions(-)

New commits:
commit 45ca66ee73bfe04a7ac17e2086f2e5d20bfa93e9
Author: Mart Raudsepp <leio at gentoo.org>
Date:   Sat Nov 17 23:51:39 2012 +0200

    lx_exa: Improvements to negative srcX/Y PictOpSrc/Over operations
    
    Adds handling of negative srcX or srcY coordinates, which is used by gtk3
    GtkTrayIcon implementation via cairo for centering icons on top of the
    destination area.
    
    For now just handle the drawing within source pixmap bounds in these
    cases, as full handling of the out of bound zero-vector for PictOpSrc
    seems to require bigger refactoring, which is not suitable for the
    impending stable release.
    The approach implemented here should result in correct rendering for
    PictOpOver (as out of bounds with non-repeat mode ends up meaning
    transparency). For PictOpSrc no black borders are rendered where
    appropriate, but before this approach, no source pixmap would even be
    rendered at all, so it should be a net improvement for the upcoming
    release, while fixing the gtk3 icons in GNOME3 fallback.
    
    The completely out of bounds special case check didn't work correctly for
    negative srcX or srcY because exaScratch.srcWidth/Height are unsigned
    types, so the negative srcX or srcY got casted to unsigned, which resulted
    in a big number, so srcX >= 0 was always true (but GCC managed to not warn
    of the implicit signedness cast).
    
    Fixes https://bugs.freedesktop.org/show_bug.cgi?id=51360



More information about the xorg-commit mailing list