diff -ru groff-1.18.1.1.orig/src/xditview/draw.c groff-1.18.1.1/src/xditview/draw.c --- groff-1.18.1.1.orig/src/xditview/draw.c 2007-01-17 13:30:09.000000000 +0100 +++ groff-1.18.1.1/src/xditview/draw.c 2007-01-17 14:31:16.000000000 +0100 @@ -417,19 +417,21 @@ || !device_code_width (dw->dvi.device_font, dw->dvi.state->font_size, c, &wid)) return; - if (dw->dvi.native) { - DoCharacter (dw, c, wid); - return; - } + map = QueryFontMap (dw, dw->dvi.state->font_number); if (!map) return; + + if (dw->dvi.native) { + DoCharacter (dw, c, wid, map->char2XChar2b); + return; + } for (name = device_name_for_code (dw->dvi.device_font, c); name; name = device_name_for_code ((DeviceFont *)0, c)) { int code = DviCharIndex (map, name); if (code >= 0) { - DoCharacter (dw, code, wid); + DoCharacter (dw, code, wid, map->char2XChar2b); break; } if (FakeCharacter (dw, name, wid))