changeset 103650:e561e9f73ad4

* xftfont.c (xftfont_open): Avoid passing NULL argument to XftLockFace.
author Chong Yidong <cyd@stupidchicken.com>
date Tue, 30 Jun 2009 22:07:44 +0000
parents 9cfbe8bebc89
children 53dc0b838c59
files src/ChangeLog src/xftfont.c
diffstat 2 files changed, 11 insertions(+), 5 deletions(-) [+]
line wrap: on
line diff
--- a/src/ChangeLog	Tue Jun 30 21:29:44 2009 +0000
+++ b/src/ChangeLog	Tue Jun 30 22:07:44 2009 +0000
@@ -1,3 +1,8 @@
+2009-06-30  Chong Yidong  <cyd@stupidchicken.com>
+
+	* xftfont.c (xftfont_open): Avoid passing NULL argument to
+	XftLockFace.
+
 2009-06-30  Jason Rumney  <jasonr@gnu.org>
 
 	* w32term.c (w32_initialize): Use GetModuleHandle for library that
--- a/src/xftfont.c	Tue Jun 30 21:29:44 2009 +0000
+++ b/src/xftfont.c	Tue Jun 30 22:07:44 2009 +0000
@@ -287,14 +287,15 @@
   match = XftFontMatch (display, FRAME_X_SCREEN_NUMBER (f), pat, &result);
   FcPatternDestroy (pat);
   xftfont = XftFontOpenPattern (display, match);
+  if (!xftfont)
+    {
+      UNBLOCK_INPUT;
+      XftPatternDestroy (match);
+      return Qnil;
+    }
   ft_face = XftLockFace (xftfont);
   UNBLOCK_INPUT;
 
-  if (! xftfont)
-    {
-      XftPatternDestroy (match);
-      return Qnil;
-    }
   /* We should not destroy PAT here because it is kept in XFTFONT and
      destroyed automatically when XFTFONT is closed.  */
   font_object = font_make_object (VECSIZE (struct xftfont_info), entity, size);