From: Gerd Moellmann Date: Wed, 10 Jan 2001 14:43:30 +0000 (+0000) Subject: (display_line): On ttys, produce more than one X-Git-Tag: emacs-pretest-21.0.96~377 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=a98b5ed9fd116b3430b1f0e2ea9852502c285f31;p=emacs.git (display_line): On ttys, produce more than one truncation glyph for multibyte characters that don't fit on the line. --- diff --git a/src/ChangeLog b/src/ChangeLog index dd936bd97e2..c98e9782bbd 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,5 +1,9 @@ 2001-01-10 Gerd Moellmann + * xdisp.c (display_line): On ttys, produce more than one + truncation glyph for multibyte characters that don't fit on the + line. + * xselect.c (x_reply_selection_request): Add a comment. * xfns.c (Fx_backspace_delete_keys_p): Use XkbGetMap and diff --git a/src/xdisp.c b/src/xdisp.c index 367408dbdba..a68bd5d40fb 100644 --- a/src/xdisp.c +++ b/src/xdisp.c @@ -12327,8 +12327,17 @@ display_line (it) /* Maybe add truncation glyphs. */ if (!FRAME_WINDOW_P (it->f)) { - --it->glyph_row->used[TEXT_AREA]; - produce_special_glyphs (it, IT_TRUNCATION); + int i, n; + + for (i = row->used[TEXT_AREA] - 1; i > 0; --i) + if (!CHAR_GLYPH_PADDING_P (row->glyphs[TEXT_AREA][i])) + break; + + for (n = row->used[TEXT_AREA]; i < n; ++i) + { + row->used[TEXT_AREA] = i; + produce_special_glyphs (it, IT_TRUNCATION); + } } row->truncated_on_right_p = 1;