Viewing Issue Simple Details Jump to Notes ] Wiki ] View Advanced ] Issue History ] Print ]
ID Category Severity Reproducibility Date Submitted Last Update
0004179 [DCSS] Bug Report minor always 2011-06-27 00:30 2011-06-27 09:19
Reporter sxoz View Status public  
Assigned To
Priority normal Resolution open  
Status new   Product Branch 0.9 ancient branch
Summary 0004179: unicode glyphs no longer work
Description I've noticed that in the latest trunk builds, my settings for specific unicode glyphs are no longer working. I searched through the changes and it seems like it is due to 7126c74. It is not clear to me whether this is an intentional change to disallow any unicode glyphs, or if this change is mistakenly too restrictive.

Here's what I have in my config:

char_set = unicode

cset_unicode = door_closed : +
cset_unicode = wall        : x23    # #
cset_unicode = wall_magic  : x263C  # ?
cset_unicode = floor_magic : x2219  # ?
cset_unicode = cloud       : x20aa  # ?
cset_unicode = arch        : x3a0   # ?
cset_unicode = trap        : x2227  # ?
cset_unicode = statue      : x3a6   # ?
cset_unicode = tree        : x2663  # ?
cset_unicode = altar       : x3c0   # ?
cset_unicode = fountain    : x3d2   # ?
cset_unicode = invis_exposed:x25ca  # ?
cset_unicode = item_missile: xab    # «

mon_glyph = ; : x3B1   # ?
mon_glyph = S : xDF    # ß
mon_glyph = G : x398   # ?
mon_glyph = trivial sensed monster : x2211  # ?
mon_glyph = easy sensed monster    : x2211  # ?
mon_glyph = tough sensed monster   : x2211  # ?
mon_glyph = nasty sensed monster   : x2211  # ?

feature = shallow water {x223C} # ?
feature = explore horizon {x25CC,,green} # ?


All of the above glyphs used to work just fine, but are now generating "Invalid glyph override" errors when I start crawl (in either Tiles or console mode) on my machine (MacPro running OSX 10.6.7). I've got the latest source code compiled (0.9-a1-742) but this has been happening for a while now (I get and compile the source regularly).

Also, in case it matters, this is the output of locale in a shell:
LANG="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_CTYPE="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_ALL="en_US.UTF-8"
Additional Information
Tags No tags attached.
Attached Files

- Relationships

-  Notes
(0013554)
KiloByte (manager)
2011-06-27 00:51

Could you please try with this patch:

--- a/crawl-ref/source/initfile.cc
+++ b/crawl-ref/source/initfile.cc
@@ -1095,7 +1095,7 @@ ucs_t get_glyph_override(int c)
     }
     if (wcwidth(c) != 1)
     {
- mprf(MSGCH_ERROR, "Invalid glyph override: %X", c);
+ mprf(MSGCH_ERROR, "Invalid glyph override: %X (wcwidth=%d)", c, wcwidth(c));
         c = 0;
     }
     return c;

-- what it does say for those glyphs?
(0013559)
sxoz (reporter)
2011-06-27 09:19

I applied the patch and the result is that every error says "wcwidth=-1".

Two more things I noticed:

1. I may have been mistaken about seeing these errors in the console build. I think what was happening was I would open Tiles, see the errors, save my game and quit, then open it in console (same save file) and see the errors from before, thinking they were happening in console too. I'm not able to produce the errors in console now, only in Tiles.

2. The errors are not occurring for any of the unicode characters specified on the "mon_glyph =" lines in my config, just for the "cset_unicode" and "feature" lines.

- Issue History
Date Modified Username Field Change
2011-06-27 00:30 sxoz New Issue
2011-06-27 00:51 KiloByte Note Added: 0013554
2011-06-27 09:19 sxoz Note Added: 0013559
2015-04-08 10:52 TAS2012 Issue Monitored: TAS2012


Mantis 1.1.8[^]
Copyright © 2000 - 2009 Mantis Group
Powered by Mantis Bugtracker