From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Lennart Borgman Newsgroups: gmane.emacs.devel Subject: Re: The unwarranted scrolling assumption Date: Fri, 18 Jun 2010 23:25:21 +0200 Message-ID: References: <87ocfcj7r4.fsf@mail.jurta.org> <87631jvpzg.fsf@gmail.com> <4C18211C.3070106@harpegolden.net> <87vd9j5neu.fsf@kfs-lx.rd.rdm> <83sk4misf2.fsf@gnu.org> <83iq5hiiin.fsf@gnu.org> <83fx0lihov.fsf@gnu.org> <83aaqsiyb6.fsf@gnu.org> <83zkysh2hb.fsf@gnu.org> <83vd9gh0s6.fsf@gnu.org> <83typ0gzgh.fsf@gnu.org> <83pqzogxpf.fsf@gnu.org> <83ljacgo8r.fsf@gnu.org> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Trace: dough.gmane.org 1276896351 22746 80.91.229.12 (18 Jun 2010 21:25:51 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Fri, 18 Jun 2010 21:25:51 +0000 (UTC) Cc: emacs-devel@gnu.org To: Eli Zaretskii , Stefan Monnier Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Fri Jun 18 23:25:49 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 1OPj4O-0002ds-Rr for ged-emacs-devel@m.gmane.org; Fri, 18 Jun 2010 23:25:49 +0200 Original-Received: from localhost ([127.0.0.1]:53734 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OPj4O-0000IN-8n for ged-emacs-devel@m.gmane.org; Fri, 18 Jun 2010 17:25:48 -0400 Original-Received: from [140.186.70.92] (port=45239 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OPj4J-0000II-Ct for emacs-devel@gnu.org; Fri, 18 Jun 2010 17:25:44 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1OPj4I-00042V-6j for emacs-devel@gnu.org; Fri, 18 Jun 2010 17:25:43 -0400 Original-Received: from mail-yw0-f192.google.com ([209.85.211.192]:36602) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OPj4I-00042J-3Y; Fri, 18 Jun 2010 17:25:42 -0400 Original-Received: by ywh30 with SMTP id 30so1505703ywh.24 for ; Fri, 18 Jun 2010 14:25:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:mime-version:received:in-reply-to :references:from:date:message-id:subject:to:cc:content-type :content-transfer-encoding; bh=HXyitbEe2mEVW9GRpl1OR2fu0NzT4Rz6o7f9sulmmVc=; b=ecXn2uOk77ASuUCSviyqsLppVYUG/xuxcp6XB2aFx1bYm+7+MVcWgFHhnXcQH8YG94 XGnfoPMewwDGONSVV5zN+CnfubbYYDIYkeaGwBo2swpyWKwv15puSvsdkVmzhAHlSchl rAB12qPTCWizuuomEMPBOw/2GX49qZRYSdTIw= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-type:content-transfer-encoding; b=llalZOQBe8UMDVwwQywNjxUUi10OHqRDPn/u5Rr8+Ff2iYmfjbFAaVgwyq2LYHWUHa fSi9RKng+VJ3laa9eBTva2bKK//eFqnca4Yukd4vJdNc+UrejKFZ5oVKsALx2nWtMSrH tdnmMI+B82OLv6q+uYWrfcXNZF7MDfSXe7GBc= Original-Received: by 10.101.4.4 with SMTP id g4mr1410927ani.156.1276896341368; Fri, 18 Jun 2010 14:25:41 -0700 (PDT) Original-Received: by 10.100.154.15 with HTTP; Fri, 18 Jun 2010 14:25:21 -0700 (PDT) In-Reply-To: <83ljacgo8r.fsf@gnu.org> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 2) 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:126194 Archived-At: On Fri, Jun 18, 2010 at 9:00 PM, Eli Zaretskii wrote: >> From: Lennart Borgman >> Date: Fri, 18 Jun 2010 19:31:30 +0200 >> Cc: emacs-devel@gnu.org >> >> + =C2=A0if ((w->current_matrix->begv !=3D b->begv) || (w->current_matrix= ->zv !=3D b->zv)) >> + =C2=A0 =C2=A0b->clip_changed =3D 1; > > You cannot safely use w->current_matrix if w->window_end_valid is nil. So you say that w->current_matrix->begv is not valid unless window_end_valid is non-nil. All the above test does is comparing the current clipping with that recorded in w->current_matrix->begv/zv. In that case we must set clip_changed to 1. Are you saying that w->current_matrix->begv/zv is set before the redisplay is finished? (I do not have the code here so I can not check at the moment.) If you are saying that then what you are saying above seems correct to me. But on the other hand then I think what you said before about that the redisplay engine had enough information for setting clip_changed is false. Can you explain more exactly how you are thinking? > And if you add that test, you will end up with exactly the same code > that was there originally. > > IOW, we still need to find out why reconsider_clip_changes fails to > reset the clip_changed flag. > >