From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Ivan Andrus Newsgroups: gmane.emacs.bugs Subject: bug#9324: 24.0.50; Movement past end of screen causes weird jump Date: Sat, 20 Aug 2011 09:33:31 +0200 Message-ID: References: <00373C62-5B35-44BB-8770-CC91E8161366@gmail.com> <87bovm5ssx.fsf@gmail.com> <8362ltst7w.fsf@gnu.org> <04093F70-5A0B-4123-8C18-38FAAD2A6DEC@gmail.com> <831uwhsmx7.fsf@gnu.org> <0FDD993E-173A-482A-937B-8DE5E330D4F4@gmail.com> <83ty9dqq54.fsf@gnu.org> <9ACB0EEF-FA00-4644-9D76-727BFDD9CECF@gmail.com> <83r54hqkz8.fsf@gnu.org> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 (Apple Message framework v1084) Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable X-Trace: dough.gmane.org 1313825645 24628 80.91.229.12 (20 Aug 2011 07:34:05 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Sat, 20 Aug 2011 07:34:05 +0000 (UTC) Cc: 9324@debbugs.gnu.org, antoine.levitt@gmail.com To: Eli Zaretskii Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Sat Aug 20 09:34:01 2011 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([140.186.70.17]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1Qug47-0000qO-2V for geb-bug-gnu-emacs@m.gmane.org; Sat, 20 Aug 2011 09:33:59 +0200 Original-Received: from localhost ([::1]:44640 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Qug46-0004uk-Ai for geb-bug-gnu-emacs@m.gmane.org; Sat, 20 Aug 2011 03:33:58 -0400 Original-Received: from eggs.gnu.org ([140.186.70.92]:41343) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Qug43-0004ty-3k for bug-gnu-emacs@gnu.org; Sat, 20 Aug 2011 03:33:56 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Qug41-0007I4-PC for bug-gnu-emacs@gnu.org; Sat, 20 Aug 2011 03:33:55 -0400 Original-Received: from debbugs.gnu.org ([140.186.70.43]:56396) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Qug41-0007Hx-ME for bug-gnu-emacs@gnu.org; Sat, 20 Aug 2011 03:33:53 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.69) (envelope-from ) id 1Qug66-0003Gd-2I; Sat, 20 Aug 2011 03:36:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Ivan Andrus Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-To: owner@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 20 Aug 2011 07:36:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 9324 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 9324-submit@debbugs.gnu.org id=B9324.131382574712539 (code B ref 9324); Sat, 20 Aug 2011 07:36:01 +0000 Original-Received: (at 9324) by debbugs.gnu.org; 20 Aug 2011 07:35:47 +0000 Original-Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1Qug5q-0003GB-N6 for submit@debbugs.gnu.org; Sat, 20 Aug 2011 03:35:47 -0400 Original-Received: from mail-fx0-f44.google.com ([209.85.161.44]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1Qug5n-0003G3-BI for 9324@debbugs.gnu.org; Sat, 20 Aug 2011 03:35:44 -0400 Original-Received: by fxe6 with SMTP id 6so2384714fxe.3 for <9324@debbugs.gnu.org>; Sat, 20 Aug 2011 00:33:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=subject:mime-version:content-type:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to:x-mailer; bh=hjRD1joiSyAJ/zR7gKVTFQWEfi0lhRgubcfHCfpvT8c=; b=xnCTsL+DjjDZ0oHHAr++YFwxXb1DRjUJtSa2QE+Sv2RVZzGy13+/wgUXWmZdKwKZH3 VpuFwY6+vOu/8UMURsW/SMemdrx91M8fjT76NtQL7mt1QBhPM1xXNW4Es3anQbqr4J4r c3Gw7/SSj9tvVSUzpjZ7DgKNnb4NvCZomIehI= Original-Received: by 10.223.61.148 with SMTP id t20mr442394fah.125.1313825613553; Sat, 20 Aug 2011 00:33:33 -0700 (PDT) Original-Received: from [10.0.2.16] (catv-80-99-177-48.catv.broadband.hu [80.99.177.48]) by mx.google.com with ESMTPS id y21sm3171923faj.23.2011.08.20.00.33.32 (version=SSLv3 cipher=OTHER); Sat, 20 Aug 2011 00:33:32 -0700 (PDT) In-Reply-To: <83r54hqkz8.fsf@gnu.org> X-Mailer: Apple Mail (2.1084) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list Resent-Date: Sat, 20 Aug 2011 03:36:02 -0400 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 1) X-Received-From: 140.186.70.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:50169 Archived-At: On Aug 19, 2011, at 9:06 PM, Eli Zaretskii wrote: >> From: Ivan Andrus >> Date: Fri, 19 Aug 2011 20:38:09 +0200 >> Cc: antoine.levitt@gmail.com, >> 9324@debbugs.gnu.org >>=20 >> Okay, I think I can reliably reproduce it now. Sorry it took so long = to get it right. Anyway it seems to require both = highlight-parentheses-mode and hl-sexp-mode as well as a custom = mode-line face. I invoke it with: >>=20 >> emacs -Q -l = ~/.emacs.d/elpa/highlight-parentheses-1.0.1/highlight-parentheses.el -l = ~/.emacs.d/local/hl-sexp.el ~/vcs/emacs/bug-example-3.el >=20 > Sorry to disappoint you, but I cannot reproduce this even with this > precise recipe. I downloaded the latest hl-sexp.el and > highlight-parentheses.el, and used them exactly as shown, albeit the > leading directories were different, and I still cannot see the > problem. Emacs behaves as expected. Aaargh! After running the progn, do you see all of line starting with = 208, or just the continuation of it. How about increasing the = :line-width? If I increase it to 8 I stop seeing the buggy behavior, so = maybe at 4 you can see it? =20 I was able to step through redisplay_window and watch where point = changes from=20 BUF PT: 2418 of 1..2419 GAP: 2419 SZ=3D2000 to BUF PT: 1224 of 1..2419 GAP: 2419 SZ=3D2000 Here's what I did. I have done it a few times now, so if you need me to = look at other data I can. cd ~/vcs/emacs/local/src/ gdb $EMACS break xdisp.c:14951 break xdisp.c:14939 break xdisp.c:14946 run -Q -l = ~/.emacs.d/elpa/highlight-parentheses-1.0.1/highlight-parentheses.el -l = ~/.emacs.d/local/hl-sexp.el ~/vcs/emacs/bug-example-3.el interact with emacs evaluating the font and progn blocks continuing as = necessary. Evaluate the forward-sexp and then start stepping through = with emacs: =20 Breakpoint 3, redisplay_window (window=3D4307577381, just_this_one_p=3D0) = at xdisp.c:14951 14951 if (new_vpos >=3D 0) (gdb) p new_vpos $1 =3D 336 (gdb) list 14946 new_vpos =3D window_box_height (w); 14947 } 14948=09 14949 /* If we need to move point for either of the above = reasons, 14950 now actually do it. */ 14951 if (new_vpos >=3D 0) 14952 { 14953 struct glyph_row *row; 14954=09 14955 row =3D MATRIX_FIRST_TEXT_ROW (w->desired_matrix); (gdb)=20 14956 while (MATRIX_ROW_BOTTOM_Y (row) < new_vpos) 14957 ++row; 14958=09 14959 TEMP_SET_PT_BOTH (MATRIX_ROW_START_CHARPOS (row), 14960 MATRIX_ROW_START_BYTEPOS (row)); 14961=09 14962 if (w !=3D XWINDOW (selected_window)) 14963 set_marker_both (w->pointm, Qnil, PT, PT_BYTE); 14964 else if (current_buffer =3D=3D old) 14965 SET_TEXT_POS (lpoint, PT, PT_BYTE); (gdb) n 14955 row =3D MATRIX_FIRST_TEXT_ROW (w->desired_matrix); (gdb) n 14956 while (MATRIX_ROW_BOTTOM_Y (row) < new_vpos) (gdb) prow y=3D0 x=3D0 pwid=3D112 a+d=3D12+3=3D15 phys=3D12+3=3D15 vis=3D15 L=3D0 = T=3D16 R=3D0 start=3D90 end=3D106 ENA DISP (gdb) n 40 14956 while (MATRIX_ROW_BOTTOM_Y (row) < new_vpos) (gdb) n 14957 ++row; (gdb)=20 14956 while (MATRIX_ROW_BOTTOM_Y (row) < new_vpos) (gdb)=20 14957 ++row; (gdb)=20 14956 while (MATRIX_ROW_BOTTOM_Y (row) < new_vpos) (gdb)=20 14959 TEMP_SET_PT_BOTH (MATRIX_ROW_START_CHARPOS (row), (gdb) prow y=3D330 x=3D0 pwid=3D105 a+d=3D12+3=3D15 phys=3D12+3=3D15 vis=3D15 L=3D0 = T=3D15 R=3D0 start=3D1224 end=3D1239 ENA DISP (gdb) ppt BUF PT: 2418 of 1..2419 GAP: 2419 SZ=3D2000 (gdb) n 14962 if (w !=3D XWINDOW (selected_window)) (gdb) prow y=3D330 x=3D0 pwid=3D105 a+d=3D12+3=3D15 phys=3D12+3=3D15 vis=3D15 L=3D0 = T=3D15 R=3D0 start=3D1224 end=3D1239 ENA DISP (gdb) ppt BUF PT: 1224 of 1..2419 GAP: 2419 SZ=3D2000 To be honest I'm not sure how new_vpos was set since the other = breakpoints are not triggered after having evaluated forward-sexp. The = breakpoint on "new_vpos =3D window_box_height (w) / 2;" is hit, but = after evaluating the progn, so I'm confused. Of course I have no idea = if I'm even asking the right questions, but maybe you can tell me what = else I need to look at. -Ivan=