GNU bug report logs - #22780
25.1.50; wrong average width picked for bold face for 7x13 X11 font

Previous Next

Package: emacs;

Reported by: Alex Khesin <alex <at> khesin.com>

Date: Tue, 23 Feb 2016 07:20:01 UTC

Severity: normal

Merged with 30203

Found in versions 25.1.50, 25.3

Full log


Message #14 received at 22780 <at> debbugs.gnu.org (full text, mbox):

From: gnubugs <at> gedanken.org.uk (Andrew M. Bishop)
To: 22780 <at> debbugs.gnu.org
Cc: alex <at> khesin.com
Subject: 25.1.50; wrong average width picked for bold face for 7x13 X11 font
Date: Tue, 14 Mar 2017 19:50:40 +0000
I have also found this problem since I use 7x13 as my default font.
The widening of the bold version of this font makes Emacs version 25
unusable by me.

Using Alex Khesin's test case:

$ emacs -Q --eval '(progn (set-face-font '\''default "7x13") (print (face-font "default")) (print (face-font "bold")))'

I find that these fonts all work correctly (the width is the same for
normal and bold versions):  6x9, 6x10, 6x12, 6x13, 7x14, 8x13, 8x16.

It is only the 7x13 font that does not scale correctly since it gives
different widths (80 compared to 70) for the bold compared to normal
font:

  -misc-fixed-medium-r-normal--13-120-75-75-c-70-iso8859-1
  -misc-fixed-bold-r-normal--13-120-75-75-c-80-iso8859-1


Using 'git bisect' I traced down the change that caused it and
demonstrated that it can be fixed by this patch.

-------------------- src/xfaces.c patch --------------------
diff --git a/src/xfaces.c b/src/xfaces.c
index 5077cb2d94..c898b7886f 100644
--- a/src/xfaces.c
+++ b/src/xfaces.c
@@ -5485,7 +5485,7 @@ realize_x_face (struct face_cache *cache, Lisp_Object attrs[LFACE_VECTOR_SIZE])
 	}
       if (! FONT_OBJECT_P (attrs[LFACE_FONT_INDEX]))
 	attrs[LFACE_FONT_INDEX]
-	  = font_load_for_lface (f, attrs, Ffont_spec (0, NULL));
+	  = font_load_for_lface (f, attrs, attrs[LFACE_FONT_INDEX]);
       if (FONT_OBJECT_P (attrs[LFACE_FONT_INDEX]))
 	{
 	  face->font = XFONT_OBJECT (attrs[LFACE_FONT_INDEX]);
-------------------- src/xfaces.c patch --------------------

This reverts a patch that was made as part of bug #17973.  The change
in src/font.c that was also made in that bug report seems to not be
relevant.

This is clearly a regression from Emacs 24 but since this change was
made to fix another bug it might be quite difficult to find a change
that works for both.




This bug report was last modified 5 years and 221 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.