From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: Miles Bader Newsgroups: gmane.emacs.devel Subject: Re: current CVS redisplay is fucked Date: 28 Aug 2002 10:30:34 +0900 Sender: emacs-devel-admin@gnu.org Message-ID: References: Reply-To: Miles Bader NNTP-Posting-Host: localhost.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Trace: main.gmane.org 1030498281 2301 127.0.0.1 (28 Aug 2002 01:31:21 GMT) X-Complaints-To: usenet@main.gmane.org NNTP-Posting-Date: Wed, 28 Aug 2002 01:31:21 +0000 (UTC) Cc: emacs-pretest-bug@gnu.org Return-path: Original-Received: from quimby.gnus.org ([80.91.224.244]) by main.gmane.org with esmtp (Exim 3.35 #1 (Debian)) id 17jrfz-0000aq-00 for ; Wed, 28 Aug 2002 03:31:19 +0200 Original-Received: from monty-python.gnu.org ([199.232.76.173]) by quimby.gnus.org with esmtp (Exim 3.12 #1 (Debian)) id 17jsBY-0004Rn-00 for ; Wed, 28 Aug 2002 04:03:56 +0200 Original-Received: from localhost ([127.0.0.1] helo=monty-python.gnu.org) by monty-python.gnu.org with esmtp (Exim 4.10) id 17jrhK-00025i-00; Tue, 27 Aug 2002 21:32:42 -0400 Original-Received: from list by monty-python.gnu.org with tmda-scanned (Exim 4.10) id 17jrfP-00023u-00 for emacs-devel@gnu.org; Tue, 27 Aug 2002 21:30:43 -0400 Original-Received: from mail by monty-python.gnu.org with spam-scanned (Exim 4.10) id 17jrfN-00023i-00 for emacs-devel@gnu.org; Tue, 27 Aug 2002 21:30:42 -0400 Original-Received: from tyo202.gate.nec.co.jp ([210.143.35.52]) by monty-python.gnu.org with esmtp (Exim 4.10) id 17jrfM-00023d-00; Tue, 27 Aug 2002 21:30:40 -0400 Original-Received: from mailgate4.nec.co.jp ([10.7.69.195]) by TYO202.gate.nec.co.jp (8.11.6/3.7W01080315) with ESMTP id g7S1Uc417645; Wed, 28 Aug 2002 10:30:38 +0900 (JST) Original-Received: from mailsv.nec.co.jp (mailgate51.nec.co.jp [10.7.69.190]) by mailgate4.nec.co.jp (8.11.6/3.7W-MAILGATE-NEC) with ESMTP id g7S1Uag06403; Wed, 28 Aug 2002 10:30:37 +0900 (JST) Original-Received: from mcsss2.ucom.lsi.nec.co.jp ([10.30.114.133]) by mailsv.nec.co.jp (8.11.6/3.7W-MAILSV-NEC) with ESMTP id g7S1UZe00559; Wed, 28 Aug 2002 10:30:35 +0900 (JST) Original-Received: from mcspd15.ucom.lsi.nec.co.jp (mcspd15 [10.30.114.174]) by mcsss2.ucom.lsi.nec.co.jp (8.10.2+Sun/3.7Wlsi_mx_6.0) with ESMTP id g7S1UZs18714; Wed, 28 Aug 2002 10:30:35 +0900 (JST) Original-Received: by mcspd15.ucom.lsi.nec.co.jp (Postfix, from userid 31295) id F393336F2; Wed, 28 Aug 2002 10:30:34 +0900 (JST) Original-To: emacs-devel@gnu.org System-Type: i686-pc-linux-gnu Blat: Foop In-Reply-To: Original-Lines: 19 Errors-To: emacs-devel-admin@gnu.org X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.0.11 Precedence: bulk List-Help: List-Post: List-Subscribe: , List-Id: Emacs development discussions. List-Unsubscribe: , List-Archive: Xref: main.gmane.org gmane.emacs.devel:7012 X-Report-Spam: http://spam.gmane.org/gmane.emacs.devel:7012 --=-=-= The problem seems to be this change from yesterday: 2002-08-27 Kenichi Handa * xdisp.c (get_next_display_element): In unibyte case, don't use octal form for such eight-bit characters that can be converted to multibyte char. I reverted the attached patch in my local tree, and the problem is gone. -Miles --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=p1 Content-Description: xdisp.c patch that causes display problems Index: xdisp.c =================================================================== RCS file: /cvsroot/emacs/emacs/src/xdisp.c,v retrieving revision 1.777 retrieving revision 1.778 diff -u -r1.777 -r1.778 --- xdisp.c 22 Aug 2002 16:52:56 -0000 1.777 +++ xdisp.c 27 Aug 2002 00:59:55 -0000 1.778 @@ -4258,14 +4258,22 @@ the translation. This could easily be changed but I don't believe that it is worth doing. - Non-printable multibyte characters are also translated - octal form. */ - else if ((it->c < ' ' + If it->multibyte_p is nonzero, eight-bit characters and + non-printable multibyte characters are also translated to + octal form. + + If it->multibyte_p is zero, eight-bit characters that + don't have corresponding multibyte char code are also + translated to octal form. */ + else if (((it->c < ' ' || it->c == 127) && (it->area != TEXT_AREA || (it->c != '\n' && it->c != '\t'))) - || (it->c >= 127 - && it->len == 1) - || !CHAR_PRINTABLE_P (it->c)) + || (it->multibyte_p + ? ((it->c >= 127 + && it->len == 1) + || !CHAR_PRINTABLE_P (it->c)) + : (it->c >= 128 + && it->c == unibyte_char_to_multibyte (it->c)))) { /* IT->c is a control character which must be displayed either as '\003' or as `^C' where the '\\' and '^' --=-=-= -- We live, as we dream -- alone.... --=-=-=--