changeset 109081:bcae1f83a33e

Check FC_DUAL too. For such fonts, check width one by one.
author Kenichi Handa <handa@etlken>
date Wed, 30 Jun 2010 15:55:41 +0900
parents 25b707510762
children 8dc2952aaa12 52a665d72788
files src/ChangeLog src/ftfont.c src/xftfont.c
diffstat 3 files changed, 9 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/ChangeLog	Wed Jun 30 15:51:39 2010 +0900
+++ b/src/ChangeLog	Wed Jun 30 15:55:41 2010 +0900
@@ -1,3 +1,10 @@
+2009-06-17  Naohiro Aota  <naota@elisp.net>  (tiny change)
+
+	* xftfont.c (xftfont_open): Check font width one by one also when
+	spacing is dual.
+
+	* ftfont.c (ftfont_open): Ditto.
+
 2010-06-30  Glenn Morris  <rgm@gnu.org>
 
 	* s/sol2-6.h (INHIBIT_X11R6_XIM): Remove, handled by configure now.
--- a/src/ftfont.c	Wed Jun 30 15:51:39 2010 +0900
+++ b/src/ftfont.c	Wed Jun 30 15:55:41 2010 +0900
@@ -1262,7 +1262,7 @@
     spacing = XINT (AREF (entity, FONT_SPACING_INDEX));
   else
     spacing = FC_PROPORTIONAL;
-  if (spacing != FC_PROPORTIONAL)
+  if (spacing != FC_PROPORTIONAL && spacing != FC_DUAL)
     font->min_width = font->average_width = font->space_width
       = (scalable ? ft_face->max_advance_width * size / upEM
 	 : ft_face->size->metrics.max_advance >> 6);
--- a/src/xftfont.c	Wed Jun 30 15:51:39 2010 +0900
+++ b/src/xftfont.c	Wed Jun 30 15:55:41 2010 +0900
@@ -429,7 +429,7 @@
 	ascii_printable[i] = ' ' + i;
     }
   BLOCK_INPUT;
-  if (spacing != FC_PROPORTIONAL)
+  if (spacing != FC_PROPORTIONAL && spacing != FC_DUAL)
     {
       font->min_width = font->average_width = font->space_width
 	= xftfont->max_advance_width;