In article <[EMAIL PROTECTED]>, [EMAIL PROTECTED] (Kim F. Storm) writes:

> Kenichi Handa <[EMAIL PROTECTED]> writes:
>>  I got a bug report for emacs-unicode-2, and it seems that
>>  the same bug exists in HEAD too.  The backtrace is this:
>>  and never changed in the while loop.  So the only reason I
>>  can think of why the address pointed by list_string becomes
>>  out of bound is that the string data of ELT was relocated in
>>  the loop and the original address was returned to OS.
>>  Actually, display_string is called in the loop, and it will
>>  run Lisp code.
>> 
>>  So, I think we meed this change.  What do you think?

> Bravo!!  We definitely need this patch.

I forgot to update lisp_string in that patch.  So the
attached one is better (and simpler).  I've just installed
it.

---
Kenichi Handa
[EMAIL PROTECTED]

2005-09-12  Kenichi Handa  <[EMAIL PROTECTED]>

        * xdisp.c (display_mode_element): Be sure to make variables THIS
        and LISP_STRING point into a string data of ELT.

*** xdisp.c     10 Sep 2005 09:35:12 +0900      1.1050
--- xdisp.c     12 Sep 2005 20:47:28 +0900      
***************
*** 16171,16176 ****
--- 16171,16178 ----
                else /* c == 0 */
                  break;
              }
+           this += SDATA (elt) - lisp_string;
+           lisp_string = SDATA (elt);
          }
        }
        break;


_______________________________________________
Emacs-devel mailing list
Emacs-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-devel

Reply via email to