xserver: Branch 'master'
Keith Packard
keithp at kemper.freedesktop.org
Sat May 15 19:52:53 PDT 2010
render/render.c | 7 +++++++
1 file changed, 7 insertions(+)
New commits:
commit 87ea5760f86eb60840e6e2c10012915952df5377
Author: Keith Packard <keithp at keithp.com>
Date: Mon May 10 11:46:25 2010 -0700
Check pixmap allocation return value when creating glyphs
The driver may decide that the pixmap is too large or something and
fail to allocate a pixmap; not checking would lead to a segfault.
Signed-off-by: Keith Packard <keithp at keithp.com>
Reviewed-by: Jamey Sharp <jamey at minilop.net>
diff --git a/render/render.c b/render/render.c
index bba1ce1..9aabcfb 100644
--- a/render/render.c
+++ b/render/render.c
@@ -1140,6 +1140,12 @@ ProcRenderAddGlyphs (ClientPtr client)
width, height, depth,
CREATE_PIXMAP_USAGE_GLYPH_PICTURE);
+ if (!pDstPix)
+ {
+ err = BadAlloc;
+ goto bail;
+ }
+
GlyphPicture (glyph)[screen] = pDst =
CreatePicture (0, &pDstPix->drawable,
glyphSet->format,
@@ -1149,6 +1155,7 @@ ProcRenderAddGlyphs (ClientPtr client)
/* The picture takes a reference to the pixmap, so we
drop ours. */
(pScreen->DestroyPixmap) (pDstPix);
+ pDstPix = NULL;
if (! pDst)
{
More information about the xorg-commit
mailing list