[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#679633: pu: package xserver-xorg-video-intel/2:2.13.0-7



Package: release.debian.org
Severity: normal
User: release.debian.org@packages.debian.org
Usertags: pu

(x-debbugs-cc to 678565@bugs.d.o)

Hi,

Simon McVittie reported a crash in the intel driver, and tracked down
the fix in the upstream tree.  The patch is simple and applies cleanly.
debdiff follows, modulo dch -r.

diff --git a/debian/changelog b/debian/changelog
index b1719a3..7f85d32 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,11 @@
+xserver-xorg-video-intel (2:2.13.0-7) UNRELEASED; 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 <jcristau@debian.org>  Sat, 30 Jun 2012 12:49:00 +0200
+
 xserver-xorg-video-intel (2:2.13.0-6) stable; urgency=low
 
   * Cherry-pick from upstream:
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);

Cheers,
Julien

Attachment: signature.asc
Description: Digital signature


Reply to: