GNU bug report logs - #22637
25.1.50; `mode-line` face `:height` incompatible with `scroll-conservatively 101`.

Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.

Package: emacs; Reported by: Keith David Bershatsky <esq@HIDDEN>; dated Fri, 12 Feb 2016 02:14:02 UTC; Maintainer for emacs is bug-gnu-emacs@HIDDEN.

Message received at 22637 <at> debbugs.gnu.org:


Received: (at 22637) by debbugs.gnu.org; 16 Feb 2016 15:51:31 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Feb 16 10:51:31 2016
Received: from localhost ([127.0.0.1]:38208 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1aVhuV-0001Hg-JV
	for submit <at> debbugs.gnu.org; Tue, 16 Feb 2016 10:51:31 -0500
Received: from eggs.gnu.org ([208.118.235.92]:38772)
 by debbugs.gnu.org with esmtp (Exim 4.84)
 (envelope-from <eliz@HIDDEN>) id 1aVhuS-0001HT-G1
 for 22637 <at> debbugs.gnu.org; Tue, 16 Feb 2016 10:51:29 -0500
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <eliz@HIDDEN>) id 1aVhuK-0004AT-2B
 for 22637 <at> debbugs.gnu.org; Tue, 16 Feb 2016 10:51:23 -0500
X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org
X-Spam-Level: 
X-Spam-Status: No, score=-0.0 required=5.0 tests=BAYES_40,RP_MATCHES_RCVD
 autolearn=disabled version=3.3.2
Received: from fencepost.gnu.org ([2001:4830:134:3::e]:57165)
 by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from <eliz@HIDDEN>)
 id 1aVhuJ-0004AP-V2; Tue, 16 Feb 2016 10:51:19 -0500
Received: from 84.94.185.246.cable.012.net.il ([84.94.185.246]:3023
 helo=home-c4e4a596f7)
 by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128)
 (Exim 4.82) (envelope-from <eliz@HIDDEN>)
 id 1aVhuJ-0002dZ-7l; Tue, 16 Feb 2016 10:51:19 -0500
Date: Tue, 16 Feb 2016 17:51:28 +0200
Message-Id: <83oabgwt4v.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Keith David Bershatsky <esq@HIDDEN>
In-reply-to: <m2io1pfjv5.wl%esq@HIDDEN> (message from Keith David
 Bershatsky on Mon, 15 Feb 2016 18:51:26 -0800)
Subject: Re: bug#22637: 25.1.50;
 `mode-line` face `:height` incompatible with `scroll-conservatively
 101`.
References: <m2io1pfjv5.wl%esq@HIDDEN>
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic]
X-Received-From: 2001:4830:134:3::e
X-Spam-Score: -5.0 (-----)
X-Debbugs-Envelope-To: 22637
Cc: 22637 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Reply-To: Eli Zaretskii <eliz@HIDDEN>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -5.0 (-----)

> Date:  Mon, 15 Feb 2016 18:51:26 -0800
> From:  Keith David Bershatsky <esq@HIDDEN>
> Cc:  22637 <at> debbugs.gnu.org
> 
> The same situation mentioned in my email earlier today (02/15/2016) is also present in the first test case that we looked at for #22637.   I.e., after an insertion in the first test case, the `window-scroll-functions` hook never fires after `window-start` is corrected.  So a user seeking to use the `window-scroll-functions` hook following a large insertion (e.g., a large yank, and so forth) is out of luck in that situation in terms of using a correct `window-start`.  I have already dealt with it for the `window-start-end-hook` by forcing a call every command loop thereby bypassing "optimization 3"; however, the WSF has no fix at this time.

The reason window-scroll-functions aren't run in both of these test
cases is that what happens there is not considered "scrolling".
Scrolling is informally defined as either an explicit call to a
function that scrolls the window, or a pseudo-scroll done by the
display engine when it detects that some part of the window's previous
display is still present, but in a different vertical position.
Moving point to an arbitrary location is neither.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#22637; Package emacs. Full text available.

Message received at 22637 <at> debbugs.gnu.org:


Received: (at 22637) by debbugs.gnu.org; 16 Feb 2016 02:51:37 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Feb 15 21:51:36 2016
Received: from localhost ([127.0.0.1]:40631 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1aVVjk-0004w5-OV
	for submit <at> debbugs.gnu.org; Mon, 15 Feb 2016 21:51:36 -0500
Received: from cobb.liquidweb.com ([50.28.13.150]:49396)
 by debbugs.gnu.org with esmtp (Exim 4.84)
 (envelope-from <esq@HIDDEN>) id 1aVVjj-0004vt-1N
 for 22637 <at> debbugs.gnu.org; Mon, 15 Feb 2016 21:51:35 -0500
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lawlist.com;
 s=default; 
 h=Content-Type:MIME-Version:Subject:Cc:To:From:Message-ID:Date;
 bh=mHJhhfxc598jOcRVvx7oGbRFS9m8cyVn1jVojGgoijo=; 
 b=LRs5YFI8mnPAspuST9KQ3rvVDnQaOZZB761pRGoJG7wR46s4oizBItAXjvW2T5fY2P5X+VesBrYa86J3JYvIFXo+CgYr8NXchNgHzIAB2+n5pRIfiKpehEU/+Ioo8u23;
Received: from cpe-45-48-239-195.socal.res.rr.com ([45.48.239.195]:54348
 helo=server.private.localhost)
 by cobb.liquidweb.com with esmtp (Exim 4.82)
 (envelope-from <esq@HIDDEN>)
 id 1aVVja-0006P3-1c; Mon, 15 Feb 2016 21:51:26 -0500
Date: Mon, 15 Feb 2016 18:51:26 -0800
Message-ID: <m2io1pfjv5.wl%esq@HIDDEN>
From: Keith David Bershatsky <esq@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#22637: 25.1.50;
 `mode-line` face `:height` incompatible with `scroll-conservatively
 101`.
MIME-Version: 1.0 (generated by   - "")
Content-Type: text/plain; charset=US-ASCII
X-AntiAbuse: This header was added to track abuse,
 please include it with any abuse report
X-AntiAbuse: Primary Hostname - cobb.liquidweb.com
X-AntiAbuse: Original Domain - debbugs.gnu.org
X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12]
X-AntiAbuse: Sender Address Domain - lawlist.com
X-Get-Message-Sender-Via: cobb.liquidweb.com: acl_c_relayhosts_text_entry:
 lawlist|lawlist.com
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 22637
Cc: 22637 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.7 (/)

The same situation mentioned in my email earlier today (02/15/2016) is also present in the first test case that we looked at for #22637.   I.e., after an insertion in the first test case, the `window-scroll-functions` hook never fires after `window-start` is corrected.  So a user seeking to use the `window-scroll-functions` hook following a large insertion (e.g., a large yank, and so forth) is out of luck in that situation in terms of using a correct `window-start`.  I have already dealt with it for the `window-start-end-hook` by forcing a call every command loop thereby bypassing "optimization 3"; however, the WSF has no fix at this time.

The difference between the first and second test case is as follows:  The first test case deals with a straight insertion.  The second test case uses insertion merely to populate the buffer with some text so that we can then see what happens when using `goto-char`.  I commented out the two lines of `goto-char` in the `test` function below to replicate the first test case scenario.  The prior email is the second test case scenario.


(face-spec-set 'mode-line
'((((class color) (min-colors 88))
   :box (:line-width -1 :style released-button)
   :background "grey75" :foreground "black" :height 120)
  (t
   :inverse-video t)))

(setq scroll-conservatively 101)
(global-eldoc-mode -1)
(global-font-lock-mode -1)
(blink-cursor-mode -1)

(defun test ()
 (interactive)
 (switch-to-buffer (get-buffer-create "*foo*"))
 (add-hook 'window-scroll-functions 'wsf-test-fn nil 'local)
 (buffer-disable-undo)
 (setq undo-auto-current-boundary-timer t
	timer-list (delq 'undo-auto--boundary-timer timer-list))
 (dotimes (i 200)
   (insert (format "I will not obey absurd orders %d.\n" i)))
 ;; (goto-char (point-min))
 ;; (goto-char (- (point-max) 1000))
  )

(defun wsf-test-fn (win start)
  (let* (
      (end (window-end nil t))
      (pos-visible (pos-visible-in-window-p nil win nil)) )
    (message "window-start: %s | window-end: %s | pos-visible: %s"
      start end pos-visible)))

(global-set-key [f1] 'test)




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#22637; Package emacs. Full text available.

Message received at 22637 <at> debbugs.gnu.org:


Received: (at 22637) by debbugs.gnu.org; 16 Feb 2016 02:00:17 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Feb 15 21:00:17 2016
Received: from localhost ([127.0.0.1]:40622 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1aVUw5-0003n3-Fr
	for submit <at> debbugs.gnu.org; Mon, 15 Feb 2016 21:00:17 -0500
Received: from cobb.liquidweb.com ([50.28.13.150]:47875)
 by debbugs.gnu.org with esmtp (Exim 4.84)
 (envelope-from <esq@HIDDEN>) id 1aVUw4-0003mr-2N
 for 22637 <at> debbugs.gnu.org; Mon, 15 Feb 2016 21:00:16 -0500
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lawlist.com;
 s=default; 
 h=Content-Type:MIME-Version:Subject:Cc:To:From:Message-ID:Date;
 bh=1JqjQzizDdhNi4cgwr4125P6ommXUw1HJgO/4fPX+Xc=; 
 b=frxN+rMIeCg8Xs0hCS9S4Hs2vxdsAS/xLIb60I/sGYX8w+vtrHk4c8oDy6OCGJpzja/tfkkPJq6tZXXUcdBPl8dFmRL4ig26YKwjatJg9Usanu/sejSvy1evE7SzU4wn;
Received: from cpe-45-48-239-195.socal.res.rr.com ([45.48.239.195]:53890
 helo=server.private.localhost)
 by cobb.liquidweb.com with esmtp (Exim 4.82)
 (envelope-from <esq@HIDDEN>)
 id 1aVUvu-0002RE-DV; Mon, 15 Feb 2016 21:00:06 -0500
Date: Mon, 15 Feb 2016 18:00:06 -0800
Message-ID: <m2k2m5fm8p.wl%esq@HIDDEN>
From: Keith David Bershatsky <esq@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#22637: 25.1.50;
 `mode-line` face `:height` incompatible with `scroll-conservatively
 101`.
MIME-Version: 1.0 (generated by   - "")
Content-Type: multipart/mixed; boundary="Multipart_Mon_Feb_15_18:00:05_2016-1"
X-AntiAbuse: This header was added to track abuse,
 please include it with any abuse report
X-AntiAbuse: Primary Hostname - cobb.liquidweb.com
X-AntiAbuse: Original Domain - debbugs.gnu.org
X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12]
X-AntiAbuse: Sender Address Domain - lawlist.com
X-Get-Message-Sender-Via: cobb.liquidweb.com: acl_c_relayhosts_text_entry:
 lawlist|lawlist.com
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 22637
Cc: 22637 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.7 (/)

--Multipart_Mon_Feb_15_18:00:05_2016-1
Content-Type: text/plain; charset=US-ASCII

Thank you, Eli, for the most recent fix implemented in relation to #22637.  Both of the fixes that you have already implemented do indeed resolve the two test cases.

You might be interested to know that the `window-scroll-functions` hook never runs after `window-start` is corrected in the following example, so anyone seeking to use that hook with a correct `window-start` is out of luck.  In addition to the test example below, this type of fact pattern occurs when using things such as isearch and ispell (e.g., when programmatically moving to a point that is not yet visible).  Attached is an updated `window_start_end_hook.diff` that depicts an example of how I have tentatively dealt with it for the new hook (but I did not attempt to fix the WSF).


(face-spec-set 'mode-line
'((((class color) (min-colors 88))
   :box (:line-width -1 :style released-button)
   :background "grey75" :foreground "black" :height 120)
  (t
   :inverse-video t)))

(setq scroll-conservatively 101)
(global-eldoc-mode -1)
(global-font-lock-mode -1)
(blink-cursor-mode -1)

(defun wsf-test-fn (win start)
  (let* (
      (end (window-end nil t))
      (pos-visible (pos-visible-in-window-p nil win nil)) )
    (message "window-start: %s | window-end: %s | pos-visible: %s"
      start end pos-visible)))

(defun test ()
 (interactive)
 (switch-to-buffer (get-buffer-create "*foo*"))
 (add-hook 'window-scroll-functions 'wsf-test-fn nil 'local)
 (buffer-disable-undo)
 (setq undo-auto-current-boundary-timer t
	timer-list (delq 'undo-auto--boundary-timer timer-list))
 (dotimes (i 200)
   (insert (format "I will not obey absurd orders %d.\n" i)))
 (goto-char (point-min))
 (goto-char (- (point-max) 1000)))

(global-set-key [f1] 'test)



--Multipart_Mon_Feb_15_18:00:05_2016-1
Content-Type: application/diff; type=patch
Content-Disposition: attachment; filename="window_start_end_hook.diff"
Content-Transfer-Encoding: base64

ZGlmZiAtLWdpdCBhL3NyYy9rZXlib2FyZC5jIGIvc3JjL2tleWJvYXJkLmMKaW5kZXggMzQzMWNk
OC4uM2Q4ZDU0ZiAxMDA2NDQKLS0tIGEvc3JjL2tleWJvYXJkLmMKKysrIGIvc3JjL2tleWJvYXJk
LmMKQEAgLTEyMzMsNiArMTIzMywxNSBAQCBzdGF0aWMgaW50IHJlYWRfa2V5X3NlcXVlbmNlIChM
aXNwX09iamVjdCAqLCBpbnQsIExpc3BfT2JqZWN0LAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgYm9vbCwgYm9vbCwgYm9vbCwgYm9vbCk7CiBzdGF0aWMgdm9pZCBhZGp1c3RfcG9pbnRf
Zm9yX3Byb3BlcnR5IChwdHJkaWZmX3QsIGJvb2wpOwogCitzdGF0aWMgdm9pZAorc2V0X3dpbmRv
d19zdGFydF9lbmRfaG9vayAodm9pZCkKK3sKKyAgTGlzcF9PYmplY3Qgd2luZG93ID0gKHNlbGVj
dGVkX3dpbmRvdyk7CisgIHN0cnVjdCB3aW5kb3cgKncgPSBkZWNvZGVfbGl2ZV93aW5kb3cgKHdp
bmRvdyk7CisgIHctPndpbmRvd19zdGFydF9lbmRfaG9va19mb3JjZSA9IHRydWU7CisgIHctPndp
bmRvd19zdGFydF9lbmRfaG9va19wZW5kaW5nID0gdHJ1ZTsKK30KKwogTGlzcF9PYmplY3QKIGNv
bW1hbmRfbG9vcF8xICh2b2lkKQogewpAQCAtMTI1OCw2ICsxMjY3LDggQEAgY29tbWFuZF9sb29w
XzEgKHZvaWQpCiAgICAgICBpZiAoIU5JTFAgKFZwb3N0X2NvbW1hbmRfaG9vaykgJiYgIU5JTFAg
KFZydW5faG9va3MpKQogCXNhZmVfcnVuX2hvb2tzIChRcG9zdF9jb21tYW5kX2hvb2spOwogCisg
ICAgICBzZXRfd2luZG93X3N0YXJ0X2VuZF9ob29rICgpOworCiAgICAgICAvKiBJZiBkaXNwbGF5
aW5nIGEgbWVzc2FnZSwgcmVzaXplIHRoZSBlY2hvIGFyZWEgd2luZG93IHRvIGZpdAogCSB0aGF0
IG1lc3NhZ2UncyBzaXplIGV4YWN0bHkuICAqLwogICAgICAgaWYgKCFOSUxQIChlY2hvX2FyZWFf
YnVmZmVyWzBdKSkKQEAgLTE0NzQsNiArMTQ4NSw4IEBAIGNvbW1hbmRfbG9vcF8xICh2b2lkKQog
CiAgICAgICBzYWZlX3J1bl9ob29rcyAoUXBvc3RfY29tbWFuZF9ob29rKTsKIAorICAgICAgc2V0
X3dpbmRvd19zdGFydF9lbmRfaG9vayAoKTsKKwogICAgICAgLyogSWYgZGlzcGxheWluZyBhIG1l
c3NhZ2UsIHJlc2l6ZSB0aGUgZWNobyBhcmVhIHdpbmRvdyB0byBmaXQKIAkgdGhhdCBtZXNzYWdl
J3Mgc2l6ZSBleGFjdGx5LiAgKi8KICAgICAgIGlmICghTklMUCAoZWNob19hcmVhX2J1ZmZlclsw
XSkpCmRpZmYgLS1naXQgYS9zcmMvbGlzcC5oIGIvc3JjL2xpc3AuaAppbmRleCA4YWEyODYxLi4w
OTYyMzA2IDEwMDY0NAotLS0gYS9zcmMvbGlzcC5oCisrKyBiL3NyYy9saXNwLmgKQEAgLTM5MTMs
NiArMzkxMyw3IEBAIGV4dGVybiB2b2lkIGluaXRfZXZhbF9vbmNlICh2b2lkKTsKIGV4dGVybiBM
aXNwX09iamVjdCBzYWZlX2NhbGwgKHB0cmRpZmZfdCwgTGlzcF9PYmplY3QsIC4uLik7CiBleHRl
cm4gTGlzcF9PYmplY3Qgc2FmZV9jYWxsMSAoTGlzcF9PYmplY3QsIExpc3BfT2JqZWN0KTsKIGV4
dGVybiBMaXNwX09iamVjdCBzYWZlX2NhbGwyIChMaXNwX09iamVjdCwgTGlzcF9PYmplY3QsIExp
c3BfT2JqZWN0KTsKK2V4dGVybiBMaXNwX09iamVjdCBzYWZlX2NhbGw3IChMaXNwX09iamVjdCwg
TGlzcF9PYmplY3QsIExpc3BfT2JqZWN0LCBMaXNwX09iamVjdCwgTGlzcF9PYmplY3QsIExpc3Bf
T2JqZWN0LCBMaXNwX09iamVjdCwgTGlzcF9PYmplY3QpOwogZXh0ZXJuIHZvaWQgaW5pdF9ldmFs
ICh2b2lkKTsKIGV4dGVybiB2b2lkIHN5bXNfb2ZfZXZhbCAodm9pZCk7CiBleHRlcm4gdm9pZCB1
bndpbmRfYm9keSAoTGlzcF9PYmplY3QpOwpkaWZmIC0tZ2l0IGEvc3JjL3dpbmRvdy5oIGIvc3Jj
L3dpbmRvdy5oCmluZGV4IGMyOTIwN2QuLjMxNTY5MjcgMTAwNjQ0Ci0tLSBhL3NyYy93aW5kb3cu
aAorKysgYi9zcmMvd2luZG93LmgKQEAgLTM0OCw2ICszNDgsMTIgQEAgc3RydWN0IHdpbmRvdwog
ICAgICAgIFZ3aW5kb3dfc2Nyb2xsX2Z1bmN0aW9uczsgYWxzbyBieSBGcmVjZW50ZXIgd2l0aCBh
cmd1bWVudC4gICovCiAgICAgYm9vbF9iZiBvcHRpb25hbF9uZXdfc3RhcnQgOiAxOwogCisgICAg
LyogVHJ1ZSBtZWFucyBmb3JjZSBhIGNhbGwgdG8gVndpbmRvd19zdGFydF9lbmRfaG9vay4gICov
CisgICAgYm9vbF9iZiB3aW5kb3dfc3RhcnRfZW5kX2hvb2tfZm9yY2UgOiAxOworCisgICAgLyog
VHJ1ZSBtZWFucyB0aGUgaG9vayBoYXMgbm90IHlldCBydW4gd2l0aCBwb2ludCBmdWxseSB2aXNp
YmxlLiAgKi8KKyAgICBib29sX2JmIHdpbmRvd19zdGFydF9lbmRfaG9va19wZW5kaW5nIDogMTsK
KwogICAgIC8qIFRydWUgbWVhbnMgdGhlIGN1cnNvciBpcyBjdXJyZW50bHkgZGlzcGxheWVkLiAg
VGhpcyBjYW4gYmUKICAgICAgICBzZXQgdG8gemVybyBieSBmdW5jdGlvbnMgb3ZlcnBhaW50aW5n
IHRoZSBjdXJzb3IgaW1hZ2UuICAqLwogICAgIGJvb2xfYmYgcGh5c19jdXJzb3Jfb25fcCA6IDE7
CmRpZmYgLS1naXQgYS9zcmMveGRpc3AuYyBiL3NyYy94ZGlzcC5jCmluZGV4IGZlZDU4NzkuLmQz
ZTEwMmQgMTAwNjQ0Ci0tLSBhL3NyYy94ZGlzcC5jCisrKyBiL3NyYy94ZGlzcC5jCkBAIC0yNjE4
LDYgKzI2MTgsMTMgQEAgc2FmZV9jYWxsMiAoTGlzcF9PYmplY3QgZm4sIExpc3BfT2JqZWN0IGFy
ZzEsIExpc3BfT2JqZWN0IGFyZzIpCiAgIHJldHVybiBzYWZlX2NhbGwgKDMsIGZuLCBhcmcxLCBh
cmcyKTsKIH0KIAorLyogIFRoaXMgaXMgZm9yIHRoZSBgd2luZG93X3N0YXJ0X2VuZF9ob29rJy4g
IENhbGwgZnVuY3Rpb24gRk4gd2l0aCBzZXZlbiBhcmd1bWVudHMuCisgICAgUmV0dXJuIHRoZSBy
ZXN1bHQgb3IgbmlsIGlmIHNvbWV0aGluZyB3ZW50IHdyb25nLiAgKi8KK0xpc3BfT2JqZWN0Citz
YWZlX2NhbGw3IChMaXNwX09iamVjdCBmbiwgTGlzcF9PYmplY3QgYXJnMSwgTGlzcF9PYmplY3Qg
YXJnMiwgTGlzcF9PYmplY3QgYXJnMywgTGlzcF9PYmplY3QgYXJnNCwgTGlzcF9PYmplY3QgYXJn
NSwgTGlzcF9PYmplY3QgYXJnNiwgTGlzcF9PYmplY3QgYXJnNykKK3sKKyAgcmV0dXJuIHNhZmVf
Y2FsbCAoOCwgZm4sIGFyZzEsIGFyZzIsIGFyZzMsIGFyZzQsIGFyZzUsIGFyZzYsIGFyZzcpOwor
fQogCiAMCiAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioKQEAgLTEzNDE3LDYgKzEzNDI0LDY4IEBAIGRvIHsgaWYg
KCEgcG9sbGluZ19zdG9wcGVkX2hlcmUpIHN0b3BfcG9sbGluZyAoKTsJXAogZG8geyBpZiAocG9s
bGluZ19zdG9wcGVkX2hlcmUpIHN0YXJ0X3BvbGxpbmcgKCk7CVwKICAgICAgICBwb2xsaW5nX3N0
b3BwZWRfaGVyZSA9IGZhbHNlOyB9IHdoaWxlIChmYWxzZSkKIAorc3RhdGljIHZvaWQKK3J1bl93
aW5kb3dfc3RhcnRfZW5kX2hvb2sgKHN0cnVjdCB0ZXh0X3BvcyBzdGFydHAsIHN0cnVjdCB3aW5k
b3cgKncsIExpc3BfT2JqZWN0IHdpbmRvdywgc3RydWN0IGl0IGl0LCBjaGFyICpzdHJpbmcpCit7
CisgIHZvaWQgKml0ZGF0YSA9IE5VTEw7CisgIGJvb2wgZnVsbHlfcCA9IGZhbHNlOworICBFTUFD
U19JTlQgcG9zaW50ID0gUFQ7CisgIGludCB4LCB5LCBydG9wLCByYm90LCByb3doLCB2cG9zLCBz
dGFydHBfaW50ZWdlciwgZW5kcCwgcGJvbF9zdGFydHAsIHBlb2xfZW5kcDsKKyAgc3RhcnRwX2lu
dGVnZXIgPSBDSEFSUE9TIChzdGFydHApOworICBzdHJ1Y3QgYnVmZmVyICpidWY7CisgIGJ1ZiA9
IFhCVUZGRVIgKHctPmNvbnRlbnRzKTsKKyAgaWYgKCFOSUxQIChGbG9jYWxfdmFyaWFibGVfcCAo
UXdpbmRvd19zdGFydF9lbmRfaG9vaywgRndpbmRvd19idWZmZXIgKHdpbmRvdykpKQorICAgICAg
JiYgdy0+d2luZG93X3N0YXJ0X2VuZF9ob29rX3BlbmRpbmcpCisgICAgeworICAgICAgaWYgKChw
b3NpbnQgPj0gQ0hBUlBPUyAoc3RhcnRwKSAmJiBwb3NpbnQgPD0gQlVGX1pWIChidWYpKQorICAg
ICAgICAgICYmIENIQVJQT1MgKHN0YXJ0cCkgPj0gQlVGX0JFR1YgKGJ1ZikKKyAgICAgICAgICAm
JiBDSEFSUE9TIChzdGFydHApIDw9IEJVRl9aViAoYnVmKQorICAgICAgICAgICYmIHBvc192aXNp
YmxlX3AgKHcsIHBvc2ludCwgJngsICZ5LCAmcnRvcCwgJnJib3QsICZyb3doLCAmdnBvcykpCisg
ICAgICAgIGZ1bGx5X3AgPSAhcnRvcCAmJiAhcmJvdDsKKyAgICAgIGlmIChmdWxseV9wKQorICAg
ICAgICB7CisgICAgICAgICAgQ0xJUF9URVhUX1BPU19GUk9NX01BUktFUiAoc3RhcnRwLCB3LT5z
dGFydCk7CisgICAgICAgICAgaXRkYXRhID0gYmlkaV9zaGVsdmVfY2FjaGUgKCk7CisgICAgICAg
ICAgc3RhcnRfZGlzcGxheSAoJml0LCB3LCBzdGFydHApOworICAgICAgICAgIG1vdmVfaXRfdmVy
dGljYWxseSAoJml0LCB3aW5kb3dfYm94X2hlaWdodCAodykpOworICAgICAgICAgIGlmIChpdC5j
dXJyZW50X3kgPCBpdC5sYXN0X3Zpc2libGVfeSkKKyAgICAgICAgICAgIG1vdmVfaXRfcGFzdF9l
b2wgKCZpdCk7CisgICAgICAgICAgZW5kcCA9IChJVF9DSEFSUE9TIChpdCkpOworICAgICAgICAg
IGJpZGlfdW5zaGVsdmVfY2FjaGUgKGl0ZGF0YSwgZmFsc2UpOworICAgICAgICAgIFNFVF9QVCAo
c3RhcnRwX2ludGVnZXIpOworICAgICAgICAgIHBib2xfc3RhcnRwID0gWElOVCAoRmxpbmVfYmVn
aW5uaW5nX3Bvc2l0aW9uIChRbmlsKSk7CisgICAgICAgICAgU0VUX1BUIChlbmRwKTsKKyAgICAg
ICAgICBwZW9sX2VuZHAgPSBYSU5UIChGbGluZV9lbmRfcG9zaXRpb24gKFFuaWwpKTsKKyAgICAg
ICAgICBTRVRfUFQgKHBvc2ludCk7CisjaWZkZWYgR0xZUEhfREVCVUcKKyAgICAgICAgICAvKiBT
ZWUgdGhlIGRvYy1zdHJpbmcgZm9yIGBwb3MtdmlzaWJsZS1pbi13aW5kb3ctcCcuICAqLworICAg
ICAgICAgIGRlYnVnX21ldGhvZF9hZGQgKHcsICIlcyAtLSB4OiAlZCB8IHk6ICVkIHwgc3RhcnRw
OiAlZCB8IGVuZHA6ICVkIHwgcGJvbF9zdGFydHA6ICVkIHwgcGVvbF9lbmRwOiAlZCIsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RyaW5nLCB4LCB5LCBzdGFydHBfaW50ZWdlciwg
ZW5kcCwgcGJvbF9zdGFydHAsIHBlb2xfZW5kcCk7CisjZW5kaWYKKyAgICAgICAgICAvKiAgUmVz
ZXQgdGhlIGZsYWcgX2JlZm9yZV8gY2FsbGluZyBMaXNwLCBub3QgYWZ0ZXIsIHNvIHRoYXQKKyAg
ICAgICAgICAgICAgaWYgTGlzcCBkb2VzIHNpZ25hbCBhbiBlcnJvciwgdGhlIGZsYWcgd2lsbCBi
ZSByZXNldCwgYW5kCisgICAgICAgICAgICAgIHdvbid0IGNhdXNlIHRoZSBob29rIHRvIGJlIGNh
bGxlZCBhZCBuYXVzZWFtLiAgKi8KKyAgICAgICAgICB3LT53aW5kb3dfc3RhcnRfZW5kX2hvb2tf
cGVuZGluZyA9IGZhbHNlOworICAgICAgICAgIC8qICBXaGVuIGNhbGxpbmcgTGlzcCBmcm9tIHJl
ZGlzcGxheSwgYWx3YXlzIHVzZSBzYWZlX2NhbGwsIHRvIGJlCisgICAgICAgICAgICAgIHByb3Rl
Y3RlZCBhZ2FpbnN0IGVycm9ycyBzaWduYWxlZCBieSB0aGF0IExpc3AuICAqLworICAgICAgICAg
IHNhZmVfY2FsbDcgKFFydW5faG9va193aXRoX2FyZ3MsIFF3aW5kb3dfc3RhcnRfZW5kX2hvb2ss
CisgICAgICAgICAgICAgIHdpbmRvdywKKyAgICAgICAgICAgICAgbWFrZV9udW1iZXIgKHN0YXJ0
cF9pbnRlZ2VyKSwKKyAgICAgICAgICAgICAgbWFrZV9udW1iZXIgKGVuZHApLAorICAgICAgICAg
ICAgICBtYWtlX251bWJlciAocGJvbF9zdGFydHApLAorICAgICAgICAgICAgICBtYWtlX251bWJl
ciAocGVvbF9lbmRwKSwKKyAgICAgICAgICAgICAgZnVsbHlfcCA/IFF0IDogUW5pbCk7CisgICAg
ICAgIH0KKyAgICAgICAgZWxzZQorICAgICAgICAgIHsKKyNpZmRlZiBHTFlQSF9ERUJVRworICAg
ICAgICAgICAgLyogU2VlIHRoZSBkb2Mtc3RyaW5nIGZvciBgcG9zLXZpc2libGUtaW4td2luZG93
LXAnLiAgKi8KKyAgICAgICAgICAgIGRlYnVnX21ldGhvZF9hZGQgKHcsICIlcyAtLSB4OiAlZCB8
IHk6ICVkIHwgcnRvcDogJWQgfCByYm90ICVkIHwgcm93aDogJWQgfCB2cG9zOiAlZCIsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJpbmcsIHgsIHksIHJ0b3AsIHJib3QsIHJv
d2gsIHZwb3MpOworI2VuZGlmCisgICAgICAgICAgfQorICAgIH0KK30KIAogLyogUGVyaGFwcyBp
biB0aGUgZnV0dXJlIGF2b2lkIHJlY2VudGVyaW5nIHdpbmRvd3MgaWYgaXQKICAgIGlzIG5vdCBu
ZWNlc3Nhcnk7IGN1cnJlbnRseSB0aGF0IGNhdXNlcyBzb21lIHByb2JsZW1zLiAgKi8KQEAgLTEz
NzE0LDYgKzEzNzgzLDcgQEAgcmVkaXNwbGF5X2ludGVybmFsICh2b2lkKQogICAgICAgJiYgbWF0
Y2hfcAogICAgICAgJiYgIXctPmZvcmNlX3N0YXJ0CiAgICAgICAmJiAhdy0+b3B0aW9uYWxfbmV3
X3N0YXJ0CisgICAgICAmJiAhdy0+d2luZG93X3N0YXJ0X2VuZF9ob29rX2ZvcmNlCiAgICAgICAv
KiBQb2ludCBtdXN0IGJlIG9uIHRoZSBsaW5lIHRoYXQgd2UgaGF2ZSBpbmZvIHJlY29yZGVkIGFi
b3V0LiAgKi8KICAgICAgICYmIFBUID49IENIQVJQT1MgKHRsYnVmcG9zKQogICAgICAgJiYgUFQg
PD0gWiAtIENIQVJQT1MgKHRsZW5kcG9zKQpAQCAtMTU0MTgsNiArMTU0ODgsOCBAQCB0cnlfc2Ny
b2xsaW5nIChMaXNwX09iamVjdCB3aW5kb3csIGJvb2wganVzdF90aGlzX29uZV9wLAogICAvKiBS
dW4gd2luZG93IHNjcm9sbCBmdW5jdGlvbnMuICAqLwogICBzdGFydHAgPSBydW5fd2luZG93X3Nj
cm9sbF9mdW5jdGlvbnMgKHdpbmRvdywgc3RhcnRwKTsKIAorICBydW5fd2luZG93X3N0YXJ0X2Vu
ZF9ob29rIChzdGFydHAsIHcsIHdpbmRvdywgaXQsICJ0cnlfc2Nyb2xsaW5nIik7CisKICAgLyog
RGlzcGxheSB0aGUgd2luZG93LiAgR2l2ZSB1cCBpZiBuZXcgZm9udHMgYXJlIGxvYWRlZCwgb3Ig
aWYgcG9pbnQKICAgICAgZG9lc24ndCBhcHBlYXIuICAqLwogICBpZiAoIXRyeV93aW5kb3cgKHdp
bmRvdywgc3RhcnRwLCAwKSkKQEAgLTE2MDgyLDYgKzE2MTU0LDcgQEAgcmVkaXNwbGF5X3dpbmRv
dyAoTGlzcF9PYmplY3Qgd2luZG93LCBib29sIGp1c3RfdGhpc19vbmVfcCkKICAgYm9vbCBsYXN0
X2xpbmVfbWlzZml0ID0gZmFsc2U7CiAgIHB0cmRpZmZfdCBiZWdfdW5jaGFuZ2VkLCBlbmRfdW5j
aGFuZ2VkOwogICBpbnQgZnJhbWVfbGluZV9oZWlnaHQ7CisgIGJvb2wgd2luZG93X3N0YXJ0X2Vu
ZF9ob29rX3N1cHByZXNzX3dzZiA9IGZhbHNlOwogCiAgIFNFVF9URVhUX1BPUyAobHBvaW50LCBQ
VCwgUFRfQllURSk7CiAgIG9wb2ludCA9IGxwb2ludDsKQEAgLTE2MjcyLDEzICsxNjM0NSwxNiBA
QCByZWRpc3BsYXlfd2luZG93IChMaXNwX09iamVjdCB3aW5kb3csIGJvb2wganVzdF90aGlzX29u
ZV9wKQogCiAgIC8qIElmIHNvbWVvbmUgc3BlY2lmaWVkIGEgbmV3IHN0YXJ0aW5nIHBvaW50IGJ1
dCBkaWQgbm90IGluc2lzdCwKICAgICAgY2hlY2sgd2hldGhlciBpdCBjYW4gYmUgdXNlZC4gICov
Ci0gIGlmICgody0+b3B0aW9uYWxfbmV3X3N0YXJ0IHx8IHdpbmRvd19mcm96ZW5fcCAodykpCisg
IGlmICgody0+b3B0aW9uYWxfbmV3X3N0YXJ0IHx8IHctPndpbmRvd19zdGFydF9lbmRfaG9va19m
b3JjZSB8fCB3aW5kb3dfZnJvemVuX3AgKHcpKQogICAgICAgJiYgQ0hBUlBPUyAoc3RhcnRwKSA+
PSBCRUdWCiAgICAgICAmJiBDSEFSUE9TIChzdGFydHApIDw9IFpWKQogICAgIHsKKworICAgICAg
aWYgKHctPndpbmRvd19zdGFydF9lbmRfaG9va19mb3JjZSAmJiAhdy0+b3B0aW9uYWxfbmV3X3N0
YXJ0ICYmICF3aW5kb3dfZnJvemVuX3AgKHcpICYmICF3LT5mb3JjZV9zdGFydCkKKyAgICAgICAg
d2luZG93X3N0YXJ0X2VuZF9ob29rX3N1cHByZXNzX3dzZiA9IHRydWU7CisKICAgICAgIHB0cmRp
ZmZfdCBpdF9jaGFycG9zOwogCi0gICAgICB3LT5vcHRpb25hbF9uZXdfc3RhcnQgPSBmYWxzZTsK
ICAgICAgIHN0YXJ0X2Rpc3BsYXkgKCZpdCwgdywgc3RhcnRwKTsKICAgICAgIG1vdmVfaXRfdG8g
KCZpdCwgUFQsIDAsIGl0Lmxhc3RfdmlzaWJsZV95LCAtMSwKIAkJICBNT1ZFX1RPX1BPUyB8IE1P
VkVfVE9fWCB8IE1PVkVfVE9fWSk7CkBAIC0xNjI5OSwxNCArMTYzNzUsMjggQEAgcmVkaXNwbGF5
X3dpbmRvdyAoTGlzcF9PYmplY3Qgd2luZG93LCBib29sIGp1c3RfdGhpc19vbmVfcCkKIAkgICAg
dy0+Zm9yY2Vfc3RhcnQgPSB0cnVlOwogI2lmZGVmIEdMWVBIX0RFQlVHCiAJICBpZiAody0+Zm9y
Y2Vfc3RhcnQpCi0JICAgIHsKLQkgICAgICBpZiAod2luZG93X2Zyb3plbl9wICh3KSkKLQkJZGVi
dWdfbWV0aG9kX2FkZCAodywgInNldCBmb3JjZV9zdGFydCBmcm9tIGZyb3plbiB3aW5kb3cgc3Rh
cnQiKTsKLQkgICAgICBlbHNlCi0JCWRlYnVnX21ldGhvZF9hZGQgKHcsICJzZXQgZm9yY2Vfc3Rh
cnQgZnJvbSBvcHRpb25hbF9uZXdfc3RhcnQiKTsKLQkgICAgfQorICAgIHsKKyAgICAgIGlmICh3
aW5kb3dfZnJvemVuX3AgKHcpKQorICAgICAgICB7CisgICAgICAgIGRlYnVnX21ldGhvZF9hZGQg
KHcsICJzZXQgZm9yY2Vfc3RhcnQgZnJvbSBmcm96ZW4gd2luZG93IHN0YXJ0Iik7CisgICAgICB9
CisgICAgICBlbHNlIGlmICh3LT5vcHRpb25hbF9uZXdfc3RhcnQpCisgICAgICAgIHsKKyAgICAg
ICAgZGVidWdfbWV0aG9kX2FkZCAodywgInNldCBmb3JjZV9zdGFydCBmcm9tIG9wdGlvbmFsX25l
d19zdGFydCIpOworICAgICAgfQorICAgICAgZWxzZSBpZiAody0+d2luZG93X3N0YXJ0X2VuZF9o
b29rX2ZvcmNlKQorICAgICAgICB7CisgICAgICAgIGRlYnVnX21ldGhvZF9hZGQgKHcsICJzZXQg
Zm9yY2Vfc3RhcnQgZnJvbSB3aW5kb3dfc3RhcnRfZW5kX2hvb2tfZm9yY2UiKTsKKyAgICAgIH0K
KyAgICAgIGVsc2UKKyAgICAgICAgeworICAgICAgICBkZWJ1Z19tZXRob2RfYWRkICh3LCAiVGhp
cyBzaXR1YXRpb24gaXMgbm90IHlldCBjb250ZW1wbGF0ZWQuIik7CisgICAgICB9CisgICAgfQog
I2VuZGlmCiAJfQorICAgICAgdy0+b3B0aW9uYWxfbmV3X3N0YXJ0ID0gZmFsc2U7CisgICAgICB3
LT53aW5kb3dfc3RhcnRfZW5kX2hvb2tfZm9yY2UgPSBmYWxzZTsKICAgICB9CiAKICBmb3JjZV9z
dGFydDoKQEAgLTE2MzM0LDExICsxNjQyNCwxOCBAQCByZWRpc3BsYXlfd2luZG93IChMaXNwX09i
amVjdCB3aW5kb3csIGJvb2wganVzdF90aGlzX29uZV9wKQogCSB0aGFuIHRvIGdldCBpbnRvIGFu
IGluZmluaXRlIGxvb3AgY2FsbGluZyB0aGUgaG9vayBmdW5jdGlvbnMKIAkgYW5kIGhhdmluZyB0
aGVtIGdldCBtb3JlIGVycm9ycy4gICovCiAgICAgICBpZiAoIXVwZGF0ZV9tb2RlX2xpbmUKLQkg
IHx8ICEgTklMUCAoVndpbmRvd19zY3JvbGxfZnVuY3Rpb25zKSkKKwkgIHx8ICEgTklMUCAoVndp
bmRvd19zY3JvbGxfZnVuY3Rpb25zKQorCSAgfHwgISBOSUxQIChWd2luZG93X3N0YXJ0X2VuZF9o
b29rKSkKIAl7CiAJICB1cGRhdGVfbW9kZV9saW5lID0gdHJ1ZTsKIAkgIHctPnVwZGF0ZV9tb2Rl
X2xpbmUgPSB0cnVlOwotCSAgc3RhcnRwID0gcnVuX3dpbmRvd19zY3JvbGxfZnVuY3Rpb25zICh3
aW5kb3csIHN0YXJ0cCk7CisKKyAgLyogUnVuIHdpbmRvdyBzY3JvbGwgZnVuY3Rpb25zLiAgKi8K
KyAgaWYgKCF3aW5kb3dfc3RhcnRfZW5kX2hvb2tfc3VwcHJlc3Nfd3NmKQorICAgIHN0YXJ0cCA9
IHJ1bl93aW5kb3dfc2Nyb2xsX2Z1bmN0aW9ucyAod2luZG93LCBzdGFydHApOworCisgIHJ1bl93
aW5kb3dfc3RhcnRfZW5kX2hvb2sgKHN0YXJ0cCwgdywgd2luZG93LCBpdCwgInJlZGlzcGxheV93
aW5kb3cgKGZvcmNlX3N0YXJ0KSIpOworCiAJfQogCiAgICAgICBpZiAoQ0hBUlBPUyAoc3RhcnRw
KSA8IEJFR1YpCkBAIC0xNjYwNiw2ICsxNjcwMyw3IEBAIHJlZGlzcGxheV93aW5kb3cgKExpc3Bf
T2JqZWN0IHdpbmRvdywgYm9vbCBqdXN0X3RoaXNfb25lX3ApCiAJICAgICBiZWNhdXNlIGEgd2lu
ZG93IHNjcm9sbCBmdW5jdGlvbiBjYW4gaGF2ZSBjaGFuZ2VkIHRoZQogCSAgICAgYnVmZmVyLiAg
Ki8KIAkgIHx8ICFOSUxQIChWd2luZG93X3Njcm9sbF9mdW5jdGlvbnMpCisJICB8fCAhTklMUCAo
VndpbmRvd19zdGFydF9lbmRfaG9vaykKIAkgIHx8IE1JTklfV0lORE9XX1AgKHcpCiAJICB8fCAh
KHVzZWRfY3VycmVudF9tYXRyaXhfcAogCSAgICAgICA9IHRyeV93aW5kb3dfcmV1c2luZ19jdXJy
ZW50X21hdHJpeCAodykpKQpAQCAtMTY4MDMsNiArMTY5MDEsOCBAQCByZWRpc3BsYXlfd2luZG93
IChMaXNwX09iamVjdCB3aW5kb3csIGJvb2wganVzdF90aGlzX29uZV9wKQogICAvKiBSdW4gc2Ny
b2xsIGhvb2tzLiAgKi8KICAgc3RhcnRwID0gcnVuX3dpbmRvd19zY3JvbGxfZnVuY3Rpb25zICh3
aW5kb3csIGl0LmN1cnJlbnQucG9zKTsKIAorICBydW5fd2luZG93X3N0YXJ0X2VuZF9ob29rIChz
dGFydHAsIHcsIHdpbmRvdywgaXQsICJyZWRpc3BsYXlfd2luZG93IChyZWNlbnRlcikiKTsKKwog
ICAvKiBSZWRpc3BsYXkgdGhlIHdpbmRvdy4gICovCiAgIGJvb2wgdXNlX2Rlc2lyZWRfbWF0cml4
ID0gZmFsc2U7CiAgIGlmICghY3VycmVudF9tYXRyaXhfdXBfdG9fZGF0ZV9wCkBAIC0xNjgxMSw2
ICsxNjkxMSw3IEBAIHJlZGlzcGxheV93aW5kb3cgKExpc3BfT2JqZWN0IHdpbmRvdywgYm9vbCBq
dXN0X3RoaXNfb25lX3ApCiAgICAgICAvKiBEb24ndCB1c2UgdHJ5X3dpbmRvd19yZXVzaW5nX2N1
cnJlbnRfbWF0cml4IGluIHRoaXMgY2FzZQogCSBiZWNhdXNlIGl0IGNhbiBoYXZlIGNoYW5nZWQg
dGhlIGJ1ZmZlci4gICovCiAgICAgICB8fCAhTklMUCAoVndpbmRvd19zY3JvbGxfZnVuY3Rpb25z
KQorICAgICAgfHwgIU5JTFAgKFZ3aW5kb3dfc3RhcnRfZW5kX2hvb2spCiAgICAgICB8fCAhanVz
dF90aGlzX29uZV9wCiAgICAgICB8fCBNSU5JX1dJTkRPV19QICh3KQogICAgICAgfHwgISh1c2Vk
X2N1cnJlbnRfbWF0cml4X3AKQEAgLTE2OTMxLDcgKzE3MDMyLDE3IEBAIHJlZGlzcGxheV93aW5k
b3cgKExpc3BfT2JqZWN0IHdpbmRvdywgYm9vbCBqdXN0X3RoaXNfb25lX3ApCiAJICBjbGVhcl9n
bHlwaF9tYXRyaXggKHctPmRlc2lyZWRfbWF0cml4KTsKIAkgIGlmICgxID09IHRyeV93aW5kb3cg
KHdpbmRvdywgaXQuY3VycmVudC5wb3MsCiAJCQkgICAgICAgVFJZX1dJTkRPV19DSEVDS19NQVJH
SU5TKSkKLQkgICAgZ290byBkb25lOworICAgIHsKKyAgICAgIGlmICghTklMUCAoRmxvY2FsX3Zh
cmlhYmxlX3AgKFF3aW5kb3dfc3RhcnRfZW5kX2hvb2ssIEZ3aW5kb3dfYnVmZmVyICh3aW5kb3cp
KSkKKyAgICAgICAgICAmJiB3LT53aW5kb3dfc3RhcnRfZW5kX2hvb2tfcGVuZGluZykKKyAgICAg
ICAgeworICAgICAgICAgIHJ1bl93aW5kb3dfc3RhcnRfZW5kX2hvb2sgKGl0LmN1cnJlbnQucG9z
LCB3LCB3aW5kb3csIGl0LCAicmVkaXNwbGF5X3dpbmRvdyAocG9zdC1yZWNlbnRlcikiKTsKKyAg
ICAgICAgICBjbGVhcl9nbHlwaF9tYXRyaXggKHctPmRlc2lyZWRfbWF0cml4KTsKKyAgICAgICAg
ICB0cnlfd2luZG93ICh3aW5kb3csIGl0LmN1cnJlbnQucG9zLCAwKTsKKyAgICAgICAgfQorICAg
ICAgZ290byBkb25lOworICAgIH0KKwogCX0KIAogICAgICAgLyogSWYgY2VudGVyaW5nIHBvaW50
IGZhaWxlZCB0byBtYWtlIHRoZSB3aG9sZSBsaW5lIHZpc2libGUsCkBAIC0yMzY4Niw2ICsyMzc5
NywyMCBAQCBkZWNvZGVfbW9kZV9zcGVjIChzdHJ1Y3Qgd2luZG93ICp3LCByZWdpc3RlciBpbnQg
YywgaW50IGZpZWxkX3dpZHRoLAogCSAgcmV0dXJuICJAIjsKICAgICAgIH0KIAorICAgIGNhc2Ug
J3cnOgorICAgICAgeworICBwdHJkaWZmX3Qgd2luZG93X3N0YXJ0ID0gbWFya2VyX3Bvc2l0aW9u
ICh3LT5zdGFydCk7CisgIHBpbnQyc3RyIChkZWNvZGVfbW9kZV9zcGVjX2J1Ziwgd2lkdGgsIHdp
bmRvd19zdGFydCk7CisgIHJldHVybiBkZWNvZGVfbW9kZV9zcGVjX2J1ZjsKKyAgICAgIH0KKwor
ICAgIGNhc2UgJ1cnOgorICAgICAgeworICBwdHJkaWZmX3Qgd2luZG93X2VuZCA9IEJVRl9aIChi
KSAtIHctPndpbmRvd19lbmRfcG9zOworICBwaW50MnN0ciAoZGVjb2RlX21vZGVfc3BlY19idWYs
IHdpZHRoLCB3aW5kb3dfZW5kKTsKKyAgcmV0dXJuIGRlY29kZV9tb2RlX3NwZWNfYnVmOworICAg
ICAgfQorCiAgICAgY2FzZSAneic6CiAgICAgICAvKiBjb2Rpbmctc3lzdGVtIChub3QgaW5jbHVk
aW5nIGVuZC1vZi1saW5lIGZvcm1hdCkgKi8KICAgICBjYXNlICdaJzoKQEAgLTMxMTUxLDYgKzMx
Mjc2LDcgQEAgVGhleSBhcmUgc3RpbGwgbG9nZ2VkIHRvIHRoZSAqTWVzc2FnZXMqIGJ1ZmZlci4g
ICovKTsKICAgREVGU1lNIChRb3ZlcnJpZGluZ190ZXJtaW5hbF9sb2NhbF9tYXAsICJvdmVycmlk
aW5nLXRlcm1pbmFsLWxvY2FsLW1hcCIpOwogICBERUZTWU0gKFFvdmVycmlkaW5nX2xvY2FsX21h
cCwgIm92ZXJyaWRpbmctbG9jYWwtbWFwIik7CiAgIERFRlNZTSAoUXdpbmRvd19zY3JvbGxfZnVu
Y3Rpb25zLCAid2luZG93LXNjcm9sbC1mdW5jdGlvbnMiKTsKKyAgREVGU1lNIChRd2luZG93X3N0
YXJ0X2VuZF9ob29rLCAid2luZG93LXN0YXJ0LWVuZC1ob29rIik7CiAgIERFRlNZTSAoUXdpbmRv
d190ZXh0X2NoYW5nZV9mdW5jdGlvbnMsICJ3aW5kb3ctdGV4dC1jaGFuZ2UtZnVuY3Rpb25zIik7
CiAgIERFRlNZTSAoUXJlZGlzcGxheV9lbmRfdHJpZ2dlcl9mdW5jdGlvbnMsICJyZWRpc3BsYXkt
ZW5kLXRyaWdnZXItZnVuY3Rpb25zIik7CiAgIERFRlNZTSAoUWluaGliaXRfcG9pbnRfbW90aW9u
X2hvb2tzLCAiaW5oaWJpdC1wb2ludC1tb3Rpb24taG9va3MiKTsKQEAgLTMxNDcyLDYgKzMxNTk4
LDEzIEBAIGlzIHNjcm9sbGVkLiAgSXQgaXMgbm90IGRlc2lnbmVkIGZvciB0aGF0LCBhbmQgc3Vj
aCB1c2UgcHJvYmFibHkgd29uJ3QKIHdvcmsuICAqLyk7CiAgIFZ3aW5kb3dfc2Nyb2xsX2Z1bmN0
aW9ucyA9IFFuaWw7CiAKKyAgREVGVkFSX0xJU1AgKCJ3aW5kb3ctc3RhcnQtZW5kLWhvb2siLCBW
d2luZG93X3N0YXJ0X2VuZF9ob29rLAorICAgIGRvYzogLyogQSBidWZlci1sb2NhbCBob29rIHVz
ZWQgdG8gb2J0YWluIG5ldyBgd2luZG93LXN0YXJ0YCBhbmQgYHdpbmRvdy1lbmRgCitkdXJpbmcg
cmVkaXNwbGF5LiAgVGhlIGZ1bmN0aW9uIGF0dGFjaGVkIHRvIHRoaXMgaG9vayBoYXMgdGhlIGZv
bGxvd2luZyBhcmd1bWVudHM6CitXSU5ET1csIFdJTkRPVy1TVEFSVCwgV0lORE9XLUVORCwgUEJP
TC1TVEFSVCwgUEVPTC1FTkQsIEZVTExZLVAuICAqLyk7CisgIFZ3aW5kb3dfc3RhcnRfZW5kX2hv
b2sgPSBRbmlsOworICBGbWFrZV92YXJpYWJsZV9idWZmZXJfbG9jYWwgKFF3aW5kb3dfc3RhcnRf
ZW5kX2hvb2spOworCiAgIERFRlZBUl9MSVNQICgid2luZG93LXRleHQtY2hhbmdlLWZ1bmN0aW9u
cyIsCiAJICAgICAgIFZ3aW5kb3dfdGV4dF9jaGFuZ2VfZnVuY3Rpb25zLAogICAgIGRvYzogLyog
RnVuY3Rpb25zIHRvIGNhbGwgaW4gcmVkaXNwbGF5IHdoZW4gdGV4dCBpbiB0aGUgd2luZG93IG1p
Z2h0IGNoYW5nZS4gICovKTsK

--Multipart_Mon_Feb_15_18:00:05_2016-1--




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#22637; Package emacs. Full text available.

Message received at 22637 <at> debbugs.gnu.org:


Received: (at 22637) by debbugs.gnu.org; 14 Feb 2016 19:26:55 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Feb 14 14:26:55 2016
Received: from localhost ([127.0.0.1]:39062 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1aV2Jq-0005nz-QF
	for submit <at> debbugs.gnu.org; Sun, 14 Feb 2016 14:26:54 -0500
Received: from eggs.gnu.org ([208.118.235.92]:36791)
 by debbugs.gnu.org with esmtp (Exim 4.84)
 (envelope-from <eliz@HIDDEN>) id 1aV2Jo-0005nm-HU
 for 22637 <at> debbugs.gnu.org; Sun, 14 Feb 2016 14:26:52 -0500
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <eliz@HIDDEN>) id 1aV2Jg-0003QE-6q
 for 22637 <at> debbugs.gnu.org; Sun, 14 Feb 2016 14:26:47 -0500
X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org
X-Spam-Level: 
X-Spam-Status: No, score=0.8 required=5.0 tests=BAYES_50,RP_MATCHES_RCVD
 autolearn=disabled version=3.3.2
Received: from fencepost.gnu.org ([2001:4830:134:3::e]:60264)
 by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from <eliz@HIDDEN>)
 id 1aV2Jg-0003Q6-2u; Sun, 14 Feb 2016 14:26:44 -0500
Received: from 84.94.185.246.cable.012.net.il ([84.94.185.246]:3462
 helo=home-c4e4a596f7)
 by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128)
 (Exim 4.82) (envelope-from <eliz@HIDDEN>)
 id 1aV2Jf-0007RR-B2; Sun, 14 Feb 2016 14:26:43 -0500
Date: Sun, 14 Feb 2016 21:26:47 +0200
Message-Id: <83ziv3xfd4.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Keith David Bershatsky <esq@HIDDEN>
In-reply-to: <m2k2m767zt.wl%esq@HIDDEN> (message from Keith David
 Bershatsky on Sat, 13 Feb 2016 23:55:50 -0800)
Subject: Re: bug#22637: 25.1.50;
 `mode-line` face `:height` incompatible with `scroll-conservatively
 101`.
References: <m2k2m767zt.wl%esq@HIDDEN>
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic]
X-Received-From: 2001:4830:134:3::e
X-Spam-Score: -5.0 (-----)
X-Debbugs-Envelope-To: 22637
Cc: 22637 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Reply-To: Eli Zaretskii <eliz@HIDDEN>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -5.0 (-----)

> Date:  Sat, 13 Feb 2016 23:55:50 -0800
> From:  Keith David Bershatsky <esq@HIDDEN>
> Cc:  22637 <at> debbugs.gnu.org
> 
> The following example of problem 22637 is for emacs-25 branch built this evening (February 13, 2016) on Windows (XP).  I believe this relates to the "recenter" portion of `xdisp.c`.  The cursor looks like it is resting at the top of the window, when point is actually beneath the bottom of the window.

Recentering had nothing to do with this.  It was due to a stupid typo
made 2.5 years ago.  Now fixed on the emacs-25 branch.

For the record, here's a variant of your test case that avoids
triggering the undo timer (provided you don't move the mouse after
pressing F1) and also makes the lines of text different to make it
evident when cursor jumps or the window is scrolled:

(face-spec-set 'mode-line
 '((((class color) (min-colors 88))
    :box (:line-width -1 :style released-button)
    :background "grey75" :foreground "black" :height 120)
   (t
    :inverse-video t)))

(setq scroll-conservatively 101)
(global-eldoc-mode -1)
(global-font-lock-mode -1)
(blink-cursor-mode -1)

(defun test ()
  (interactive)
  (switch-to-buffer (get-buffer-create "*foo*"))
  (buffer-disable-undo)
  (setq undo-auto-current-boundary-timer t
	timer-list (delq 'undo-auto--boundary-timer timer-list))
  (dotimes (i 200)
    (insert (format "I will not obey absurd orders %d.\n" i)))
  (goto-char (point-min))
  (goto-char (- (point-max) 1000)))

(global-set-key [f1] 'test)




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#22637; Package emacs. Full text available.

Message received at 22637 <at> debbugs.gnu.org:


Received: (at 22637) by debbugs.gnu.org; 14 Feb 2016 07:56:02 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Feb 14 02:56:02 2016
Received: from localhost ([127.0.0.1]:38484 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1aUrXF-0003dZ-VA
	for submit <at> debbugs.gnu.org; Sun, 14 Feb 2016 02:56:02 -0500
Received: from cobb.liquidweb.com ([50.28.13.150]:49875)
 by debbugs.gnu.org with esmtp (Exim 4.84)
 (envelope-from <esq@HIDDEN>) id 1aUrXE-0003dG-JQ
 for 22637 <at> debbugs.gnu.org; Sun, 14 Feb 2016 02:56:00 -0500
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lawlist.com;
 s=default; 
 h=Content-Type:MIME-Version:Subject:Cc:To:From:Message-ID:Date;
 bh=JhzoFbAo43OFFpnPp1O9omXoHwV1fRihnuC+dDXnpYk=; 
 b=c2/cw52PY7+gGRSxF/RZe/KWd3Jhht0LrLb8w+/C2+dLrViuPy88Ze1B2Gr7+tUbcVuO3Vt3HFxKlirXcGCcPuYO6Qlt+kdQ8MhPcud0Ei2JRnlc82SrsSemphJT8clb;
Received: from cpe-45-48-239-195.socal.res.rr.com ([45.48.239.195]:61041
 helo=server.private.localhost)
 by cobb.liquidweb.com with esmtp (Exim 4.82)
 (envelope-from <esq@HIDDEN>)
 id 1aUrX2-0005KW-WD; Sun, 14 Feb 2016 02:55:49 -0500
Date: Sat, 13 Feb 2016 23:55:50 -0800
Message-ID: <m2k2m767zt.wl%esq@HIDDEN>
From: Keith David Bershatsky <esq@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#22637: 25.1.50;
 `mode-line` face `:height` incompatible with `scroll-conservatively
 101`.
MIME-Version: 1.0 (generated by   - "")
Content-Type: text/plain; charset=US-ASCII
X-AntiAbuse: This header was added to track abuse,
 please include it with any abuse report
X-AntiAbuse: Primary Hostname - cobb.liquidweb.com
X-AntiAbuse: Original Domain - debbugs.gnu.org
X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12]
X-AntiAbuse: Sender Address Domain - lawlist.com
X-Get-Message-Sender-Via: cobb.liquidweb.com: acl_c_relayhosts_text_entry:
 lawlist|lawlist.com
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 22637
Cc: 22637 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.7 (/)

The following example of problem 22637 is for emacs-25 branch built this evening (February 13, 2016) on Windows (XP).  I believe this relates to the "recenter" portion of `xdisp.c`.  The cursor looks like it is resting at the top of the window, when point is actually beneath the bottom of the window.

(face-spec-set 'mode-line
 '((((class color) (min-colors 88))
    :box (:line-width -1 :style released-button)
    :background "grey75" :foreground "black" :height 120)
   (t
    :inverse-video t)))

(setq scroll-conservatively 101)

(global-eldoc-mode -1)

(global-font-lock-mode -1)

(blink-cursor-mode -1)

;;  Prevent the `timer-list' from receiving `undo-auto--boundary-timer'.
(defun undo-auto--undoable-change ()
  "Called after every undoable buffer change."
  ;; (add-to-list 'undo-auto--undoably-changed-buffers (current-buffer))
  ;; (undo-auto--boundary-ensure-timer)
  )
(setq timer-list (delq 'undo-auto--boundary-timer timer-list))

(defun test ()
(interactive)
 (switch-to-buffer (get-buffer-create "*foo*"))
 (dotimes (i 200)
   (insert "I will not obey absurd orders.\n"))
   (goto-char (point-min))
   (goto-char (- (point-max) 1000)))

(global-set-key [f1] 'test)




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#22637; Package emacs. Full text available.

Message received at 22637 <at> debbugs.gnu.org:


Received: (at 22637) by debbugs.gnu.org; 14 Feb 2016 06:06:07 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Feb 14 01:06:07 2016
Received: from localhost ([127.0.0.1]:38472 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1aUpos-0000qx-QG
	for submit <at> debbugs.gnu.org; Sun, 14 Feb 2016 01:06:06 -0500
Received: from eggs.gnu.org ([208.118.235.92]:59310)
 by debbugs.gnu.org with esmtp (Exim 4.84)
 (envelope-from <eliz@HIDDEN>) id 1aUpoq-0000qU-U6
 for 22637 <at> debbugs.gnu.org; Sun, 14 Feb 2016 01:06:05 -0500
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <eliz@HIDDEN>) id 1aUpoi-0000ur-Gp
 for 22637 <at> debbugs.gnu.org; Sun, 14 Feb 2016 01:05:59 -0500
X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org
X-Spam-Level: 
X-Spam-Status: No, score=-0.0 required=5.0 tests=BAYES_40,RP_MATCHES_RCVD
 autolearn=disabled version=3.3.2
Received: from fencepost.gnu.org ([2001:4830:134:3::e]:40111)
 by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from <eliz@HIDDEN>)
 id 1aUpoi-0000un-ED; Sun, 14 Feb 2016 01:05:56 -0500
Received: from 84.94.185.246.cable.012.net.il ([84.94.185.246]:2443
 helo=home-c4e4a596f7)
 by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128)
 (Exim 4.82) (envelope-from <eliz@HIDDEN>)
 id 1aUpoh-0001PD-Cr; Sun, 14 Feb 2016 01:05:56 -0500
Date: Sun, 14 Feb 2016 08:05:58 +0200
Message-Id: <83io1rzv09.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Keith David Bershatsky <esq@HIDDEN>
In-reply-to: <m2fuww558t.wl%esq@HIDDEN> (message from Keith David
 Bershatsky on Sat, 13 Feb 2016 19:40:34 -0800)
Subject: Re: bug#22637: 25.1.50;
 `mode-line` face `:height` incompatible with `scroll-conservatively
 101`.
References: <m2fuww558t.wl%esq@HIDDEN>
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic]
X-Received-From: 2001:4830:134:3::e
X-Spam-Score: -5.0 (-----)
X-Debbugs-Envelope-To: 22637
Cc: 22637 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Reply-To: Eli Zaretskii <eliz@HIDDEN>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -5.0 (-----)

> Date:  Sat, 13 Feb 2016 19:40:34 -0800
> From:  Keith David Bershatsky <esq@HIDDEN>
> Cc:  22637 <at> debbugs.gnu.org
> 
> In addition to the fix that you implemented yesterday near the section of "optimization 3", another similar fix would be needed near the following "recenter" section that affects cursor visibility when using isearch where sometimes point is below the bottom of the screen and remains there subsequent to redisplay.  I have not yet been able to figure out how to use `cursor_row_fully_visible_p`, so I used something a little easier for me to understand that basically tests the same thing (I think).
> 
> If I can come up with a small test that demonstrates the problem when searching, I'll send over an example.  The following code, however, does seem to fix the problem in all of my tests.

Please do come up with a test case.  I don't want to make any change
that doesn't have a test which fails before and succeeds after the
change.  Having such test cases allows us to make sure later changes
don't reintroduce the same bug.

>   /* Added a check/fix for a problem similar/same as bug #22637.  */
>   if (1 == try_window (window, it.current.pos, TRY_WINDOW_CHECK_MARGINS))
>     {
>       bool fully_p = false;
>       EMACS_INT posint = PT;
>       struct buffer *buf;
>       int x, y, rtop, rbot, rowh, vpos;
>       buf = XBUFFER (w->contents);
>       if ((posint >= CHARPOS (startp) && posint <= BUF_ZV (buf))
>           && CHARPOS (startp) >= BUF_BEGV (buf)
>           && CHARPOS (startp) <= BUF_ZV (buf)
>           && pos_visible_p (w, posint, &x, &y, &rtop, &rbot, &rowh, &vpos))
>         fully_p = !rtop && !rbot;
>       if (!fully_p)
>         {
> #ifdef GLYPH_DEBUG
>           debug_method_add (w, "!fully_p -- goto try_to_scroll");
> #endif
>           goto try_to_scroll;
>         }
>         else
>           {
> #ifdef GLYPH_DEBUG
>             debug_method_add (w, "fully_p -- goto done");
> #endif
>             goto done;
>           }

I don't think this is correct.  try_window is called in many more
places in the display engine, so if this problem is due to what it
does, the fix should be inside try_window, not in its callers.

But I could be wrong -- I need to see the problem to be sure.

Thanks.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#22637; Package emacs. Full text available.

Message received at 22637 <at> debbugs.gnu.org:


Received: (at 22637) by debbugs.gnu.org; 14 Feb 2016 03:40:45 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Feb 13 22:40:45 2016
Received: from localhost ([127.0.0.1]:38437 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1aUnYC-0005tC-W2
	for submit <at> debbugs.gnu.org; Sat, 13 Feb 2016 22:40:45 -0500
Received: from cobb.liquidweb.com ([50.28.13.150]:46326)
 by debbugs.gnu.org with esmtp (Exim 4.84)
 (envelope-from <esq@HIDDEN>) id 1aUnYA-0005sx-O8
 for 22637 <at> debbugs.gnu.org; Sat, 13 Feb 2016 22:40:43 -0500
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lawlist.com;
 s=default; 
 h=Content-Type:MIME-Version:Subject:Cc:To:From:Message-ID:Date;
 bh=IKx1KG8ZhB97iqEQTQs6QscQMI8kP6AXDPTi55abetk=; 
 b=cRqiwbwsjoZrOB6Ud/1eIX0n08dKmwH2mNY+mWSE6Xseu774USFYso1oJQxPyeBUOi+JBsrcV8HZ0cGmjrREisaH+UorpFJyQZyOBWdJCeiIjhQMKZ92+HhtL7yOHeID;
Received: from cpe-45-48-239-195.socal.res.rr.com ([45.48.239.195]:56122
 helo=server.private.localhost)
 by cobb.liquidweb.com with esmtp (Exim 4.82)
 (envelope-from <esq@HIDDEN>)
 id 1aUnY0-0000K5-61; Sat, 13 Feb 2016 22:40:32 -0500
Date: Sat, 13 Feb 2016 19:40:34 -0800
Message-ID: <m2fuww558t.wl%esq@HIDDEN>
From: Keith David Bershatsky <esq@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#22637: 25.1.50;
 `mode-line` face `:height` incompatible with `scroll-conservatively
 101`.
MIME-Version: 1.0 (generated by   - "")
Content-Type: text/plain; charset=US-ASCII
X-AntiAbuse: This header was added to track abuse,
 please include it with any abuse report
X-AntiAbuse: Primary Hostname - cobb.liquidweb.com
X-AntiAbuse: Original Domain - debbugs.gnu.org
X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12]
X-AntiAbuse: Sender Address Domain - lawlist.com
X-Get-Message-Sender-Via: cobb.liquidweb.com: acl_c_relayhosts_text_entry:
 lawlist|lawlist.com
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 22637
Cc: 22637 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.7 (/)

In addition to the fix that you implemented yesterday near the section of "optimization 3", another similar fix would be needed near the following "recenter" section that affects cursor visibility when using isearch where sometimes point is below the bottom of the screen and remains there subsequent to redisplay.  I have not yet been able to figure out how to use `cursor_row_fully_visible_p`, so I used something a little easier for me to understand that basically tests the same thing (I think).

If I can come up with a small test that demonstrates the problem when searching, I'll send over an example.  The following code, however, does seem to fix the problem in all of my tests.


      /* Users who set scroll-conservatively to a large number want
	 point just above/below the scroll margin.  If we ended up
	 with point's row partially visible, move the window start to
	 make that row fully visible and out of the margin.  */
      if (scroll_conservatively > SCROLL_LIMIT)
	{
	  int window_total_lines
	    = WINDOW_TOTAL_LINES (w) * FRAME_LINE_HEIGHT (f) * frame_line_height;
	  int margin =
	    scroll_margin > 0
	    ? min (scroll_margin, window_total_lines / 4)
	    : 0;
	  bool move_down = w->cursor.vpos >= window_total_lines / 2;

	  move_it_by_lines (&it, move_down ? margin + 1 : -(margin + 1));
	  clear_glyph_matrix (w->desired_matrix);

  /* Added a check/fix for a problem similar/same as bug #22637.  */
  if (1 == try_window (window, it.current.pos, TRY_WINDOW_CHECK_MARGINS))
    {
      bool fully_p = false;
      EMACS_INT posint = PT;
      struct buffer *buf;
      int x, y, rtop, rbot, rowh, vpos;
      buf = XBUFFER (w->contents);
      if ((posint >= CHARPOS (startp) && posint <= BUF_ZV (buf))
          && CHARPOS (startp) >= BUF_BEGV (buf)
          && CHARPOS (startp) <= BUF_ZV (buf)
          && pos_visible_p (w, posint, &x, &y, &rtop, &rbot, &rowh, &vpos))
        fully_p = !rtop && !rbot;
      if (!fully_p)
        {
#ifdef GLYPH_DEBUG
          debug_method_add (w, "!fully_p -- goto try_to_scroll");
#endif
          goto try_to_scroll;
        }
        else
          {
#ifdef GLYPH_DEBUG
            debug_method_add (w, "fully_p -- goto done");
#endif
            goto done;
          }
    }

	}




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#22637; Package emacs. Full text available.

Message received at 22637 <at> debbugs.gnu.org:


Received: (at 22637) by debbugs.gnu.org; 12 Feb 2016 19:40:20 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Feb 12 14:40:20 2016
Received: from localhost ([127.0.0.1]:38244 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1aUJZk-00055r-2l
	for submit <at> debbugs.gnu.org; Fri, 12 Feb 2016 14:40:20 -0500
Received: from eggs.gnu.org ([208.118.235.92]:36641)
 by debbugs.gnu.org with esmtp (Exim 4.84)
 (envelope-from <eliz@HIDDEN>) id 1aUJZi-00055f-Nm
 for 22637 <at> debbugs.gnu.org; Fri, 12 Feb 2016 14:40:18 -0500
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <eliz@HIDDEN>) id 1aUJZY-0004Gu-Q0
 for 22637 <at> debbugs.gnu.org; Fri, 12 Feb 2016 14:40:13 -0500
X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org
X-Spam-Level: 
X-Spam-Status: No, score=0.7 required=5.0 tests=BAYES_50,RP_MATCHES_RCVD
 autolearn=disabled version=3.3.2
Received: from fencepost.gnu.org ([2001:4830:134:3::e]:37856)
 by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from <eliz@HIDDEN>)
 id 1aUJZY-0004Gn-MS; Fri, 12 Feb 2016 14:40:08 -0500
Received: from 84.94.185.246.cable.012.net.il ([84.94.185.246]:2597
 helo=home-c4e4a596f7)
 by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128)
 (Exim 4.82) (envelope-from <eliz@HIDDEN>)
 id 1aUJZY-0002nr-1s; Fri, 12 Feb 2016 14:40:08 -0500
Date: Fri, 12 Feb 2016 21:40:05 +0200
Message-Id: <83bn7l7m5m.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Keith David Bershatsky <esq@HIDDEN>
In-reply-to: <m2wpq9lx72.wl%esq@HIDDEN> (message from Keith David
 Bershatsky on Fri, 12 Feb 2016 08:17:53 -0800)
Subject: Re: bug#22637: 25.1.50;
 `mode-line` face `:height` incompatible with `scroll-conservatively
 101`.
References: <m2wpq9lx72.wl%esq@HIDDEN>
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic]
X-Received-From: 2001:4830:134:3::e
X-Spam-Score: -5.1 (-----)
X-Debbugs-Envelope-To: 22637
Cc: 22637 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Reply-To: Eli Zaretskii <eliz@HIDDEN>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -5.1 (-----)

> Date:  Fri, 12 Feb 2016 08:17:53 -0800
> From:  Keith David Bershatsky <esq@HIDDEN>
> Cc:  22637 <at> debbugs.gnu.org
> 
> Thank you, Eli, for the explanation regarding how to better interpret the GLYPH_DEBUG messages that I was seeing on stderr.
> 
> I was able to reproduce problem 22637 on Emacs for Windows (XP) master branch with the following code starting from Emacs -Q, evaluating the following code in the scratch buffer, and then pressing the F1 key a couple of times.  The last line will remain below the bottom of the visible window each time the F1 key is pressed.  On Windows, a height of 120 seems to work better for purposes of reproducing the problem, whereas on OSX I was using a height of 140.
> 
> (face-spec-set 'mode-line
>   '((((class color) (min-colors 88))
>      :box (:line-width -1 :style released-button)
>      :background "grey75" :foreground "black" :height 120)
>     (t
>      :inverse-video t)))
> 
> (setq scroll-conservatively 101)
> 
> (global-eldoc-mode -1)
> 
> (global-font-lock-mode -1)
> 
> (blink-cursor-mode -1)
> 
> (defun my-insert-text ()
> (interactive)
>   (dotimes (i 200)
>     (insert "I will not obey absurd orders.\n")))
> 
> (global-set-key [f1] 'my-insert-text)

Thanks.  This is now fixed on the emacs-25 branch.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#22637; Package emacs. Full text available.

Message received at 22637 <at> debbugs.gnu.org:


Received: (at 22637) by debbugs.gnu.org; 12 Feb 2016 16:18:04 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Feb 12 11:18:04 2016
Received: from localhost ([127.0.0.1]:38136 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1aUGQ0-0003wo-HJ
	for submit <at> debbugs.gnu.org; Fri, 12 Feb 2016 11:18:04 -0500
Received: from cobb.liquidweb.com ([50.28.13.150]:59304)
 by debbugs.gnu.org with esmtp (Exim 4.84)
 (envelope-from <esq@HIDDEN>) id 1aUGPz-0003wL-4d
 for 22637 <at> debbugs.gnu.org; Fri, 12 Feb 2016 11:18:03 -0500
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lawlist.com;
 s=default; 
 h=Content-Type:MIME-Version:Subject:Cc:To:From:Message-ID:Date;
 bh=+tNBQj0cicg4w8GjLl6EZU2e3xxta42NI/2wMrv1o9s=; 
 b=XbCVgiDsQIvMjE8pKCTDiqwBzKvaNw3nkRPXYhDiHPlvZkmONi7dBxaXH5DLkABMLsgC/apVcrHQ2v+ESEnBnMFYM0IAqeffm5HP/OfMYEIsLSWWoh4gsGYPgzVg3tKV;
Received: from cpe-45-48-239-195.socal.res.rr.com ([45.48.239.195]:49613
 helo=server.private.localhost)
 by cobb.liquidweb.com with esmtp (Exim 4.82)
 (envelope-from <esq@HIDDEN>)
 id 1aUGPm-0007kA-GW; Fri, 12 Feb 2016 11:17:50 -0500
Date: Fri, 12 Feb 2016 08:17:53 -0800
Message-ID: <m2wpq9lx72.wl%esq@HIDDEN>
From: Keith David Bershatsky <esq@HIDDEN>
To: Eli Zaretskii <eliz@HIDDEN>
Subject: Re: bug#22637: 25.1.50;
 `mode-line` face `:height` incompatible with `scroll-conservatively
 101`.
MIME-Version: 1.0 (generated by   - "")
Content-Type: text/plain; charset=US-ASCII
X-AntiAbuse: This header was added to track abuse,
 please include it with any abuse report
X-AntiAbuse: Primary Hostname - cobb.liquidweb.com
X-AntiAbuse: Original Domain - debbugs.gnu.org
X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12]
X-AntiAbuse: Sender Address Domain - lawlist.com
X-Get-Message-Sender-Via: cobb.liquidweb.com: acl_c_relayhosts_text_entry:
 lawlist|lawlist.com
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 22637
Cc: 22637 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.7 (/)

Thank you, Eli, for the explanation regarding how to better interpret the GLYPH_DEBUG messages that I was seeing on stderr.

I was able to reproduce problem 22637 on Emacs for Windows (XP) master branch with the following code starting from Emacs -Q, evaluating the following code in the scratch buffer, and then pressing the F1 key a couple of times.  The last line will remain below the bottom of the visible window each time the F1 key is pressed.  On Windows, a height of 120 seems to work better for purposes of reproducing the problem, whereas on OSX I was using a height of 140.

(face-spec-set 'mode-line
  '((((class color) (min-colors 88))
     :box (:line-width -1 :style released-button)
     :background "grey75" :foreground "black" :height 120)
    (t
     :inverse-video t)))

(setq scroll-conservatively 101)

(global-eldoc-mode -1)

(global-font-lock-mode -1)

(blink-cursor-mode -1)

(defun my-insert-text ()
(interactive)
  (dotimes (i 200)
    (insert "I will not obey absurd orders.\n")))

(global-set-key [f1] 'my-insert-text)




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#22637; Package emacs. Full text available.

Message received at 22637 <at> debbugs.gnu.org:


Received: (at 22637) by debbugs.gnu.org; 12 Feb 2016 08:17:32 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Feb 12 03:17:32 2016
Received: from localhost ([127.0.0.1]:37239 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1aU8uy-0004X7-Hw
	for submit <at> debbugs.gnu.org; Fri, 12 Feb 2016 03:17:32 -0500
Received: from eggs.gnu.org ([208.118.235.92]:46415)
 by debbugs.gnu.org with esmtp (Exim 4.84)
 (envelope-from <eliz@HIDDEN>) id 1aU8ux-0004Wu-Cf
 for 22637 <at> debbugs.gnu.org; Fri, 12 Feb 2016 03:17:31 -0500
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <eliz@HIDDEN>) id 1aU8uo-0007oM-73
 for 22637 <at> debbugs.gnu.org; Fri, 12 Feb 2016 03:17:26 -0500
X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org
X-Spam-Level: 
X-Spam-Status: No, score=0.7 required=5.0 tests=BAYES_50,RP_MATCHES_RCVD
 autolearn=disabled version=3.3.2
Received: from fencepost.gnu.org ([2001:4830:134:3::e]:43241)
 by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from <eliz@HIDDEN>)
 id 1aU8uo-0007oI-3i; Fri, 12 Feb 2016 03:17:22 -0500
Received: from 84.94.185.246.cable.012.net.il ([84.94.185.246]:1872
 helo=home-c4e4a596f7)
 by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128)
 (Exim 4.82) (envelope-from <eliz@HIDDEN>)
 id 1aU8un-0003jM-Ce; Fri, 12 Feb 2016 03:17:21 -0500
Date: Fri, 12 Feb 2016 10:17:18 +0200
Message-Id: <831t8i8hrl.fsf@HIDDEN>
From: Eli Zaretskii <eliz@HIDDEN>
To: Keith David Bershatsky <esq@HIDDEN>
In-reply-to: <m21t8ioevq.wl%esq@HIDDEN> (message from Keith David
 Bershatsky on Thu, 11 Feb 2016 18:12:57 -0800)
Subject: Re: bug#22637: 25.1.50;
 `mode-line` face `:height` incompatible with `scroll-conservatively
 101`.
References: <m21t8ioevq.wl%esq@HIDDEN>
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic]
X-Received-From: 2001:4830:134:3::e
X-Spam-Score: -5.3 (-----)
X-Debbugs-Envelope-To: 22637
Cc: 22637 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Reply-To: Eli Zaretskii <eliz@HIDDEN>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -5.3 (-----)

> Date: Thu, 11 Feb 2016 18:12:57 -0800
> From: Keith David Bershatsky <esq@HIDDEN>
> 
> Setting the `:height` property of the `mode-line` face to 140, and `scroll-conservatively 101`, prevent redisplay from making point fully visible following a large yank of text.

I cannot reproduce this.  I tried some large yanks, including all of
xdisp.c, and the cursor stayed fully visible.

IME, it is sometimes required to make small changes to the default
font, like enlarge it by 1 or 2 pixels, to reproduce problems seen on
other platforms.  I will do that if needed, but please provide a full
recipe, including the text you yanked, and the precise keystrokes used
to yank it: I'd like to be sure I do all the same gestures you did,
before I start playing with font sizes.

> As a suggestion / feature, please consider adding a GLYPH_DEBUG message to indicate when a function from the `timer-idle-list` has triggered a redisplay.

We already have that, albeit in a subtle way: when that happens, you
should see this on stderr:

  redisplay_preserve_echo_area (8)

That "8" part says redisplay_preserve_echo_area was invoked by the
function that ran timers just before that.  You should be able to see
the code which produces that in detect_input_pending_run_timers,
around line 9836 in keyboard.c.

Thanks.




Information forwarded to bug-gnu-emacs@HIDDEN:
bug#22637; Package emacs. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 12 Feb 2016 02:13:14 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Feb 11 21:13:14 2016
Received: from localhost ([127.0.0.1]:37085 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1aU3EQ-0001R8-Ch
	for submit <at> debbugs.gnu.org; Thu, 11 Feb 2016 21:13:14 -0500
Received: from eggs.gnu.org ([208.118.235.92]:42260)
 by debbugs.gnu.org with esmtp (Exim 4.84)
 (envelope-from <esq@HIDDEN>) id 1aU3EO-0001Qv-W5
 for submit <at> debbugs.gnu.org; Thu, 11 Feb 2016 21:13:13 -0500
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <esq@HIDDEN>) id 1aU3EI-0004GQ-Bp
 for submit <at> debbugs.gnu.org; Thu, 11 Feb 2016 21:13:07 -0500
X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org
X-Spam-Level: 
X-Spam-Status: No, score=0.8 required=5.0 tests=BAYES_50,T_DKIM_INVALID
 autolearn=disabled version=3.3.2
Received: from lists.gnu.org ([2001:4830:134:3::11]:39181)
 by eggs.gnu.org with esmtp (Exim 4.71)
 (envelope-from <esq@HIDDEN>) id 1aU3EI-0004GM-8N
 for submit <at> debbugs.gnu.org; Thu, 11 Feb 2016 21:13:06 -0500
Received: from eggs.gnu.org ([2001:4830:134:3::10]:33223)
 by lists.gnu.org with esmtp (Exim 4.71)
 (envelope-from <esq@HIDDEN>) id 1aU3EG-0008Gu-S5
 for bug-gnu-emacs@HIDDEN; Thu, 11 Feb 2016 21:13:06 -0500
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <esq@HIDDEN>) id 1aU3EB-0004Fr-Qf
 for bug-gnu-emacs@HIDDEN; Thu, 11 Feb 2016 21:13:04 -0500
Received: from cobb.liquidweb.com ([50.28.13.150]:35619)
 by eggs.gnu.org with esmtp (Exim 4.71)
 (envelope-from <esq@HIDDEN>) id 1aU3EB-0004Fh-Im
 for bug-gnu-emacs@HIDDEN; Thu, 11 Feb 2016 21:12:59 -0500
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lawlist.com;
 s=default; 
 h=Content-Type:MIME-Version:Subject:To:From:Message-ID:Date;
 bh=htR/4X+umRh1R3guBWoDp+AoN7IE/BXMcT6YBIZ2jik=; 
 b=pbTRjv5kGs72atW7X9RdU78m/hc/Gwm7mDEUSi85rULC8FBLMRf9pF6DtOA4Y3KARUxEUuUxtDosjClIeHU70DnT+VTWwOEBXcDDIBSoYLRcoPgjzQXn3ONRPQZkewzD;
Received: from cpe-45-48-239-195.socal.res.rr.com ([45.48.239.195]:54030
 helo=server.private.localhost)
 by cobb.liquidweb.com with esmtp (Exim 4.82)
 (envelope-from <esq@HIDDEN>) id 1aU3E7-0003nA-Tq
 for bug-gnu-emacs@HIDDEN; Thu, 11 Feb 2016 21:12:56 -0500
Date: Thu, 11 Feb 2016 18:12:57 -0800
Message-ID: <m21t8ioevq.wl%esq@HIDDEN>
From: Keith David Bershatsky <esq@HIDDEN>
To: bug-gnu-emacs@HIDDEN
Subject: 25.1.50;
 `mode-line` face `:height` incompatible with `scroll-conservatively
 101`.
MIME-Version: 1.0 (generated by   - "")
Content-Type: text/plain; charset=US-ASCII
X-AntiAbuse: This header was added to track abuse,
 please include it with any abuse report
X-AntiAbuse: Primary Hostname - cobb.liquidweb.com
X-AntiAbuse: Original Domain - gnu.org
X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12]
X-AntiAbuse: Sender Address Domain - lawlist.com
X-Get-Message-Sender-Via: cobb.liquidweb.com: acl_c_relayhosts_text_entry:
 lawlist|lawlist.com
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x
X-Received-From: 2001:4830:134:3::11
X-Spam-Score: -5.0 (-----)
X-Debbugs-Envelope-To: submit
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -5.0 (-----)

Setting the `:height` property of the `mode-line` face to 140, and `scroll-conservatively 101`, prevent redisplay from making point fully visible following a large yank of text.  [This also happens with some of my custom movement functions similar to paragraph down.]

Anything attached to the `timer-idle-list` will cause the cursor to come back into view when the clocks strikes midnight.  The following three minor modes are disabled in this example so that the `timer-idle-list` is empty.  NOTE:  Even something attached to the idle timer such as `(run-with-idle-timer 10 'repeat 'ignore)` will trigger a redisplay after 10 seconds and cause point to come back into view.

    (face-spec-set 'mode-line
      '((((class color) (min-colors 88))
         :box (:line-width -1 :style released-button)
         :background "grey75" :foreground "black" :height 140)
        (t
         :inverse-video t)))

    (setq scroll-conservatively 101)

    (global-eldoc-mode -1)

    (global-font-lock-mode -1)

    (blink-cursor-mode -1)

As a suggestion / feature, please consider adding a GLYPH_DEBUG message to indicate when a function from the `timer-idle-list` has triggered a redisplay.  It sure would have been a lot easier to come up with a minimal working example of the above-mentioned issue if I could have seen what was happening with `trace-redisplay`.

#ifdef GLYPH_DEBUG
      debug_method_add (w, "redisplay triggered by function attached to `timer-idle-list'");
#endif

Thanks,

Keith

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

In GNU Emacs 25.1.50.1 (x86_64-apple-darwin10.8.0, NS appkit-1038.36 Version 10.6.8 (Build 10K549))
 of 2016-02-08 built on server.private
Repository revision: de76a167dc09dc695a5acebabb7ab354a6bf556e
Windowing system distributor 'Apple', version 10.3.1038
Configured using:
 'configure --with-ns --without-imagemagick --enable-checking=glyphs
 CPPFLAGS=-I/Users/HOME/.0.data/.0.emacs/macports/include
 LDFLAGS=-L/Users/HOME/.0.data/.0.emacs/macports/lib'

Configured features:
JPEG RSVG DBUS NOTIFY ACL LIBXML2 ZLIB TOOLKIT_SCROLL_BARS NS

Important settings:
  locale-coding-system: utf-8-unix

Major mode: FM

Minor modes in effect:
  tabbar-mode: t
  ml-mode: t
  ds-mode: t
  sd-mode: t

Recent messages:
*beep*

Load-path shadows:
None found.

Features:
(shadow emacsbug message mml mml-sec epg mm-decode mm-bodies mm-encode
gmm-utils mailheader sendmail lawlist-ztree lawlist-ys lawlist-ws
lawlist-wl elmo-imap4 elmo-localdir modb-standard modb-legacy
elmo-internal elmo-flag mmelmo-imap mmelmo-buffer elsp-generic mel-u
epg-config lawlist-w3m doc-view jka-compr image-mode ccl lawlist-vl
lawlist-view lawlist-undo lawlist-txt lawlist-tm lawlist-tex compare-w
diff-mode lawlist-tabbar lawlist-speedbar lawlist-shell info
esh-groups ehelp ange-ftp lawlist-sgml lawlist-sb lawlist-ruler
lawlist-replace lawlist-rectangle lawlist-re-builder lawlist-python
skeleton lawlist-profiler lawlist-print lawlist-perl lawlist-parens
lawlist-org lawlist-calendar org-agenda org org-macro org-footnote
org-pcomplete org-list org-faces org-entities org-version
ob-emacs-lisp ob ob-tangle ob-ref ob-lob ob-table ob-exp org-src
ob-keys ob-comint ob-core ob-eval org-compat org-macs org-loaddefs
find-func holidays hol-loaddefs cal-menu calendar cal-loaddefs
lawlist-neotree lawlist-movement lawlist-mouse lawlist-ml lawlist-misc
lawlist-messages lawlist-mc lawlist-markdown noutline outline
lawlist-lorem lawlist-linum lawlist-keymap lawlist-js json map
thingatpt cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles
cc-align cc-engine cc-vars cc-defs lawlist-ispell lawlist-isearch
lawlist-info lawlist-imenu lawlist-ibuffer lawlist-hl lawlist-grep
lawlist-git pcvs-util ido seq server conf-mode lawlist-framebufs
lawlist-frame lawlist-fm lawlist-env lawlist-elscreen lawlist-elisp
lawlist-dv lawlist-image lawlist-files zeroconf dbus xml lawlist-ds
lawlist-dired dired dired-loaddefs format-spec lawlist-diff
lawlist-desktop frameset lawlist-saveplace lawlist-debug
lawlist-window debug lawlist-css smie lawlist-compile rx lawlist-color
lawlist-cm lawlist-cc-mode lawlist-cc-awk lawlist-font-lock cl-macs
lawlist-cc-fonts lawlist-cc-guess lawlist-cc-menus lawlist-cc-align
lawlist-cc-cmds lawlist-cc-styles lawlist-cc-engine lawlist-cc-langs
lawlist-cc-vars lawlist-cc-defs lawlist-cc-bytecomp lawlist-calc
lawlist-calc+ lawlist-bk lawlist-bc lawlist-bbdb gnus gnus-ems
nnheader mail-utils wid-edit mail-parse rfc2231 rfc2047 rfc2045
ietf-drums mailabbrev mail-extr rfc822 timezone lawlist-minibuffer gv
lawlist-auth gnus-util mm-util help-fns mail-prsvr password-cache
lawlist-as lawlist-archive lawlist-apropos lawlist-+ lawlist-lcl
byte-opt bytecomp byte-compile cl-extra cconv lawlist-help disp-table
easy-mmode edmacro kmacro quail help-mode easymenu cl-loaddefs cl-lib
pcase derived advice shell pcomplete comint ansi-color ring savehist
time-date mule-util tooltip eldoc electric uniquify ediff-hook
vc-hooks lisp-float-type mwheel ns-win ucs-normalize term/common-win
tool-bar dnd fontset image regexp-opt fringe tabulated-list newcomment
elisp-mode lisp-mode prog-mode register page menu-bar rfn-eshadow
timer select scroll-bar mouse jit-lock font-lock syntax facemenu
font-core frame cl-generic cham georgian utf-8-lang misc-lang
vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms cp51932
hebrew greek romanian slovak czech european ethiopic indian cyrillic
chinese charscript case-table epa-hook jka-cmpr-hook help simple
abbrev obarray minibuffer cl-preloaded nadvice loaddefs button faces
cus-face macroexp files text-properties overlay sha1 md5 base64 format
env code-pages mule custom widget hashtable-print-readable backquote
dbusbind kqueue cocoa ns multi-tty make-network-process emacs)

Memory information:
((conses 16 2441605 221891)
 (symbols 48 86439 1)
 (miscs 40 148 312)
 (strings 32 189178 34146)
 (string-bytes 1 7207331)
 (vectors 16 56373)
 (vector-slots 8 1154092 15038)
 (floats 8 1840 391)
 (intervals 56 342 49)
 (buffers 976 13))




Acknowledgement sent to Keith David Bershatsky <esq@HIDDEN>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs@HIDDEN. Full text available.
Report forwarded to bug-gnu-emacs@HIDDEN:
bug#22637; Package emacs. Full text available.
Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.
Last modified: Mon, 25 Nov 2019 12:00:02 UTC

GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997 nCipher Corporation Ltd, 1994-97 Ian Jackson.