From: Gerd Moellmann Date: Fri, 6 Aug 1999 21:08:08 +0000 (+0000) Subject: (set_iterator_to_next): After delivering a character X-Git-Tag: emacs-pretest-21.0.90~7244 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=286bcbc9718086ce5bac060f5724238954177bad;p=emacs.git (set_iterator_to_next): After delivering a character from a display vector, restore face and charset to what they were before the display vector was processed. --- diff --git a/src/xdisp.c b/src/xdisp.c index 4dc594955c5..28a6299836a 100644 --- a/src/xdisp.c +++ b/src/xdisp.c @@ -3459,8 +3459,16 @@ set_iterator_to_next (it) Advance in the display table definition. Reset it to null if end reached, and continue with characters from buffers/ strings. */ + struct face *face; + ++it->current.dpvec_index; + + /* Restore face and charset of the iterator to what they were + before the display vector entry (these entries may contain + faces, and of course characters of different charsets). */ it->face_id = it->saved_face_id; + it->charset = FACE_FROM_ID (it->f, it->face_id)->charset; + if (it->dpvec + it->current.dpvec_index == it->dpend) { if (it->s)