Fix font size handling.
authorKenichi Handa <handa@m17n.org>
Tue, 22 Feb 2011 01:58:03 +0000 (10:58 +0900)
committerKenichi Handa <handa@m17n.org>
Tue, 22 Feb 2011 01:58:03 +0000 (10:58 +0900)
src/ChangeLog
src/font.c

index 3a356bb..f9c1581 100644 (file)
@@ -1,3 +1,9 @@
+2011-02-22  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-19  Chong Yidong  <cyd@stupidchicken.com>
 
        * Makefile.in (prefix-args${EXEEXT}): Compile with ALL_CFLAGS.
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]);