From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.devel Subject: Re: The unwarranted scrolling assumption Date: Thu, 17 Jun 2010 22:08:48 +0300 Message-ID: <83iq5hiiin.fsf@gnu.org> References: <87ocfcj7r4.fsf@mail.jurta.org> <87631jvpzg.fsf@gmail.com> <4C18211C.3070106@harpegolden.net> <87vd9j5neu.fsf@kfs-lx.rd.rdm> <83sk4misf2.fsf@gnu.org> Reply-To: Eli Zaretskii NNTP-Posting-Host: lo.gmane.org X-Trace: dough.gmane.org 1276801773 26602 80.91.229.12 (17 Jun 2010 19:09:33 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Thu, 17 Jun 2010 19:09:33 +0000 (UTC) Cc: emacs-devel@gnu.org To: Lennart Borgman Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Thu Jun 17 21:09:32 2010 connect(): No such file or directory Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1OPKSu-0001NI-3S for ged-emacs-devel@m.gmane.org; Thu, 17 Jun 2010 21:09:29 +0200 Original-Received: from localhost ([127.0.0.1]:35184 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OPKSm-0001GG-SZ for ged-emacs-devel@m.gmane.org; Thu, 17 Jun 2010 15:09:20 -0400 Original-Received: from [140.186.70.92] (port=60953 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OPKSf-0001BI-Ty for emacs-devel@gnu.org; Thu, 17 Jun 2010 15:09:15 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1OPKSZ-0004eL-Th for emacs-devel@gnu.org; Thu, 17 Jun 2010 15:09:09 -0400 Original-Received: from mtaout23.012.net.il ([80.179.55.175]:55487) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OPKSZ-0004e4-Mo for emacs-devel@gnu.org; Thu, 17 Jun 2010 15:09:07 -0400 Original-Received: from conversion-daemon.a-mtaout23.012.net.il by a-mtaout23.012.net.il (HyperSendmail v2007.08) id <0L4600N00ABW0G00@a-mtaout23.012.net.il> for emacs-devel@gnu.org; Thu, 17 Jun 2010 22:08:43 +0300 (IDT) Original-Received: from HOME-C4E4A596F7 ([77.127.88.125]) by a-mtaout23.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0L4600J0VAIIEA80@a-mtaout23.012.net.il>; Thu, 17 Jun 2010 22:08:43 +0300 (IDT) In-reply-to: X-012-Sender: halo1@inter.net.il X-detected-operating-system: by eggs.gnu.org: Solaris 10 (beta) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:126086 Archived-At: > From: Lennart Borgman > Date: Thu, 17 Jun 2010 20:44:26 +0200 > Cc: emacs-devel@gnu.org > > - The path try_scrolling is not taken. > - This is because clip_changed is 1. > - narrow_to_region set it to 1. > - reconsider_clip_changes gets a chance to reset it to 0, but it does > not in this case. > - reconsider_clip_changes does not however set it to 1. > > The reason that reconsider_clip_changes does not set clip_changed to 0 is that > > !NILP (w->window_end_valid), > > which looks like window_end_valid is non-nil. Thanks, this is a start, but something is still missing. We have this code at the beginning of reconsider_clip_changes: if (b->clip_changed && !NILP (w->window_end_valid) && w->current_matrix->buffer == b && w->current_matrix->zv == BUF_ZV (b) && w->current_matrix->begv == BUF_BEGV (b)) b->clip_changed = 0; So, if b->clip_changed is non-zero at entry to reconsider_clip_changes, and w->window_end_valid is non-nil, as you say, this code should have reset b->clip_changed to zero. And yet you say it didn't. Why not? what prevented it from doing so?