]> git.eshelyaron.com Git - emacs.git/commitdiff
(reseat_to_string): If STRING is multibyte, set
authorGerd Moellmann <gerd@gnu.org>
Wed, 28 Mar 2001 14:32:24 +0000 (14:32 +0000)
committerGerd Moellmann <gerd@gnu.org>
Wed, 28 Mar 2001 14:32:24 +0000 (14:32 +0000)
the iterator's multibyte_p flag.

src/ChangeLog
src/xdisp.c

index 47f6bdfa98d3140010c79783de5f89d7d56d8a21..83a0653a3c1c0e94e7a9fa5243a0fe57b2d4d934 100644 (file)
@@ -1,5 +1,8 @@
 2001-03-28  Gerd Moellmann  <gerd@gnu.org>
 
+       * xdisp.c (reseat_to_string): If STRING is multibyte, set
+       the iterator's multibyte_p flag.
+
        * xfaces.c (realize_basic_faces): Decrement menu_face_change_count
        instead of setting it to zero; it's incremented for each frame
        where the menu face is changed.
index 669b0d77ebf4496fb34aa778359fd93a13c22f58..c31062232f161ea4d8e953cd1f771bcf398edc7f 100644 (file)
@@ -3983,8 +3983,11 @@ reseat_to_string (it, s, string, charpos, precision, field_width, multibyte)
   it->current.dpvec_index = -1;
   xassert (charpos >= 0);
   
-  /* Use the setting of MULTIBYTE if specified.  */
-  if (multibyte >= 0)
+  /* If STRING is specified, use its multibyteness, otherwise use the
+     setting of MULTIBYTE, if specified.  */
+  if (STRINGP (string))
+    it->multibyte_p = STRING_MULTIBYTE (string);
+  else if (multibyte >= 0)
     it->multibyte_p = multibyte > 0;
   
   if (s == NULL)
@@ -13943,9 +13946,7 @@ display_string (string, lisp_string, face_string, face_string_pos,
   struct glyph_row *row = it->glyph_row;
 
   /* Initialize the iterator IT for iteration over STRING beginning
-     with index START.  We assume that IT may be modified here (which
-     means that display_line has to do something when displaying a
-     mini-buffer prompt, which it does).  */
+     with index START.  */
   reseat_to_string (it, string, lisp_string, start,
                    precision, field_width, multibyte);