debian/changelog |    8 ++++++++
 uxa/uxa-glyphs.c |   10 ++++++++++
 2 files changed, 18 insertions(+)

New commits:
commit 246f46819a8f3e8cb529d7b95cdb7f19c85214eb
Author: Julien Cristau <jcris...@debian.org>
Date:   Sat Jun 30 13:10:57 2012 +0200

    Upload to squeeze

diff --git a/debian/changelog b/debian/changelog
index b1719a3..ab9ccca 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,11 @@
+xserver-xorg-video-intel (2:2.13.0-7) squeeze; urgency=low
+
+  * Cherry-pick from upstream:
+    - uxa/glyphs: Fallback instead of crashing on large strings
+    Thanks to Simon McVittie for tracking this down (closes: #678565)
+
+ -- Julien Cristau <jcris...@debian.org>  Sat, 30 Jun 2012 13:10:54 +0200
+
 xserver-xorg-video-intel (2:2.13.0-6) stable; urgency=low
 
   * Cherry-pick from upstream:

commit a3c104b58d34a325fcfa1966c625d68fb5cba303
Author: Chris Wilson <ch...@chris-wilson.co.uk>
Date:   Tue Jun 28 20:25:46 2011 +0100

    uxa/glyphs: Fallback instead of crashing on large strings
    
    Not ideal, but being slow is a major improvement over losing data.
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=36860
    Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk>
    (cherry picked from commit 18d08e49d270b7a05f14a309759c9315e5ab9679)

diff --git a/uxa/uxa-glyphs.c b/uxa/uxa-glyphs.c
index ad4f387..da765f6 100644
--- a/uxa/uxa-glyphs.c
+++ b/uxa/uxa-glyphs.c
@@ -934,6 +934,11 @@ uxa_glyphs_via_mask(CARD8 op,
        if (!pixmap)
                return 1;
 
+       if (!uxa_pixmap_is_offscreen(pixmap)) {
+               screen->DestroyPixmap(pixmap);
+               return -1;
+       }
+
        uxa_clear_pixmap(screen, uxa_screen, pixmap);
 
        component_alpha = NeedsComponent(maskFormat->format);
@@ -1126,6 +1131,11 @@ fallback:
                if (!pixmap)
                        return;
 
+               if (!uxa_pixmap_is_offscreen(pixmap)) {
+                       screen->DestroyPixmap(pixmap);
+                       goto fallback;
+               }
+
                gc = GetScratchGC(depth, screen);
                if (!gc) {
                        screen->DestroyPixmap(pixmap);


-- 
To UNSUBSCRIBE, email to debian-x-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/e1skvk8-0005vh...@vasks.debian.org

Reply via email to