summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBehdad Esfahbod <behdad@gnome.org>2009-01-28 22:07:21 +0000
committerBehdad Esfahbod <behdad@src.gnome.org>2009-01-28 22:07:21 +0000
commitc436a45f4022fb8a4ac5dccc45f0c6427f332c1f (patch)
tree7440fb7a5fecdeb39361514612bf3ba78a8cea16
parentd9f876c81e5ebcc820639f4b08196e3017680305 (diff)
downloadpango-c436a45f4022fb8a4ac5dccc45f0c6427f332c1f.tar.gz
Avoid context key comparison if any of the keys is NULL.
2009-01-09 Behdad Esfahbod <behdad@gnome.org> * pango/pangofc-fontmap.c (font_hash_key_equal): Avoid context key comparison if any of the keys is NULL. svn path=/trunk/; revision=2802
-rw-r--r--ChangeLog5
-rw-r--r--pango/pangofc-fontmap.c4
2 files changed, 7 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 80f755e7..d5008601 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
2009-01-09 Behdad Esfahbod <behdad@gnome.org>
+ * pango/pangofc-fontmap.c (font_hash_key_equal):
+ Avoid context key comparison if any of the keys is NULL.
+
+2009-01-09 Behdad Esfahbod <behdad@gnome.org>
+
* pango/pangocairo-atsuifont.c (_pango_cairo_atsui_font_new):
* pango/pangocairo-fcfont.c (_pango_cairo_fc_font_new):
* pango/pangocairo-font.c (_pango_cairo_font_private_initialize):
diff --git a/pango/pangofc-fontmap.c b/pango/pangofc-fontmap.c
index 9d92464e..0d7fe7ee 100644
--- a/pango/pangofc-fontmap.c
+++ b/pango/pangofc-fontmap.c
@@ -388,12 +388,12 @@ font_hash_key_equal (const FontHashKey *key_a,
key_a->matrix.yy == key_b->matrix.yy &&
key_a->pattern == key_b->pattern)
{
- if (key_a->context_key)
+ if (key_a->context_key && key_b->context_key)
return PANGO_FC_FONT_MAP_GET_CLASS (key_a->fontmap)->context_key_equal (key_a->fontmap,
key_a->context_key,
key_b->context_key);
else
- return TRUE;
+ return key_a->context_key == key_b->context_key;
}
else
return FALSE;