bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#17973: Thin space not thin at all


From: K. Handa
Subject: bug#17973: Thin space not thin at all
Date: Mon, 14 Jul 2014 00:12:58 +0900

In article <jwvzjghmeli.fsf-monnier+emacsbugs@gnu.org>, Stefan Monnier 
<monnier@iro.umontreal.ca> writes:

> Ah, right, that explains it.  Hmm... I guess ideally, Emacs should
> consider a height that's "too far" from the requested one as a failure
> and then try again ignoring some of the specs.

font_find_for_lface has a code to do that, but I found that
it is called with full font properties in SPEC.  This
function does not try a font of different properties
(foundry, family, registry, adstyle).

> The patch below expresses the first part, but it looks like the second
> part doesn't exit: Emacs just doesn't find any font to use for the "thin
> space" of C-x SPC and indicates it to me with one of those big squares
> that say "0020", which is a lot more intrusive than the problem I'm
> trying to fix.

In addition to your patch, could you please try the following patch?

=== modified file 'src/xfaces.c'
--- src/xfaces.c        2014-07-07 23:33:05 +0000
+++ src/xfaces.c        2014-07-13 15:09:21 +0000
@@ -5547,7 +5547,7 @@
        }
       if (! FONT_OBJECT_P (attrs[LFACE_FONT_INDEX]))
        attrs[LFACE_FONT_INDEX]
-         = font_load_for_lface (f, attrs, attrs[LFACE_FONT_INDEX]);
+         = font_load_for_lface (f, attrs, Ffont_spec (0, NULL));
       if (FONT_OBJECT_P (attrs[LFACE_FONT_INDEX]))
        {
          face->font = XFONT_OBJECT (attrs[LFACE_FONT_INDEX]);

> PS: The patch below also happens to give me assertion failures
> fontset.c:897: Emacs fatal error: assertion failed: fontset_id_valid_p 
> (face->fontset)
> I haven't investigated any further, tho (and the line number might be off
> because of local changes anyway).

I didn't face with that error, but I'll keep on checking the code.

---
Kenichi Handa
handa@gnu.org





reply via email to

[Prev in Thread] Current Thread [Next in Thread]