Fix font-size handling bug.
authorKenichi Handa <handa@m17n.org>
Thu, 17 Feb 2011 07:47:29 +0000 (16:47 +0900)
committerKenichi Handa <handa@m17n.org>
Thu, 17 Feb 2011 07:47:29 +0000 (16:47 +0900)
src/ChangeLog
src/font.c

index 68e9c76..6b3c5bc 100644 (file)
@@ -1,3 +1,9 @@
+2011-02-17  Kenichi Handa  <handa@m17n.org>
+
+       * font.c (font_open_entity): Be sure to set scaled_pixel_size.
+       (font_find_for_lface): Check if attrs[LFACE_HEIGHT_INDEX] is
+       integer.
+
 2011-02-13  Eli Zaretskii  <eliz@gnu.org>
 
        * xdisp.c (redisplay_internal): Resynchronize `w' if the selected
index ebf0b54..08309d3 100644 (file)
@@ -3042,7 +3042,7 @@ font_open_entity (f, entity, pixel_size)
   Lisp_Object objlist, size, val, font_object;
   struct font *font;
   int min_width, height;
-  int scaled_pixel_size;
+  int scaled_pixel_size = pixel_size;
 
   font_assert (FONT_ENTITY_P (entity));
   size = AREF (entity, FONT_SIZE_INDEX);
@@ -3422,7 +3422,7 @@ font_find_for_lface (f, attrs, spec, c)
   XSETFRAME (frame, f);
   size = AREF (spec, FONT_SIZE_INDEX);
   pixel_size = font_pixel_size (f, spec);
-  if (pixel_size == 0)
+  if (pixel_size == 0 && INTEGERP (attrs[LFACE_HEIGHT_INDEX]))
     {
       double pt = XINT (attrs[LFACE_HEIGHT_INDEX]);