From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED.blaine.gmane.org!not-for-mail From: Pip Cet Newsgroups: gmane.emacs.bugs Subject: bug#36190: 27.0.50; `put-text-property' etc. with buffer argument calls current buffer's `after-change-functions' Date: Sat, 15 Jun 2019 19:27:30 +0000 Message-ID: References: <83h88tzbly.fsf@gnu.org> <835zp9z4oj.fsf@gnu.org> <83y325xnk0.fsf@gnu.org> <83k1doy5om.fsf@gnu.org> <83d0jgxt83.fsf@gnu.org> <83wohmvpng.fsf@gnu.org> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="00000000000035e745058b61c372" Injection-Info: blaine.gmane.org; posting-host="blaine.gmane.org:195.159.176.226"; logging-data="98619"; mail-complaints-to="usenet@blaine.gmane.org" Cc: 36190@debbugs.gnu.org To: Eli Zaretskii Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Sat Jun 15 21:29:22 2019 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([209.51.188.17]) by blaine.gmane.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.89) (envelope-from ) id 1hcEMa-000PVp-1y for geb-bug-gnu-emacs@m.gmane.org; Sat, 15 Jun 2019 21:29:20 +0200 Original-Received: from localhost ([::1]:35324 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.86_2) (envelope-from ) id 1hcEMY-0000BW-TC for geb-bug-gnu-emacs@m.gmane.org; Sat, 15 Jun 2019 15:29:18 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:53717) by lists.gnu.org with esmtp (Exim 4.86_2) (envelope-from ) id 1hcEMQ-0000BQ-0l for bug-gnu-emacs@gnu.org; Sat, 15 Jun 2019 15:29:11 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hcEML-0003dP-RL for bug-gnu-emacs@gnu.org; Sat, 15 Jun 2019 15:29:07 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:53907) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1hcEMH-0003bJ-Qj for bug-gnu-emacs@gnu.org; Sat, 15 Jun 2019 15:29:03 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1hcEMH-0001In-LQ for bug-gnu-emacs@gnu.org; Sat, 15 Jun 2019 15:29:01 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Pip Cet Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 15 Jun 2019 19:29:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 36190 X-GNU-PR-Package: emacs Original-Received: via spool by 36190-submit@debbugs.gnu.org id=B36190.15606268944920 (code B ref 36190); Sat, 15 Jun 2019 19:29:01 +0000 Original-Received: (at 36190) by debbugs.gnu.org; 15 Jun 2019 19:28:14 +0000 Original-Received: from localhost ([127.0.0.1]:39218 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hcELW-0001HI-49 for submit@debbugs.gnu.org; Sat, 15 Jun 2019 15:28:14 -0400 Original-Received: from mail-ot1-f47.google.com ([209.85.210.47]:41908) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hcELU-0001H5-Ex for 36190@debbugs.gnu.org; Sat, 15 Jun 2019 15:28:13 -0400 Original-Received: by mail-ot1-f47.google.com with SMTP id 107so5761162otj.8 for <36190@debbugs.gnu.org>; Sat, 15 Jun 2019 12:28:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=D1sM0o7En1KJSUJWcNqINDtHCeg7Smx9YVEhpEZaHbw=; b=t9kEgy3CuppR8TsqsCO2T3+1q4IG8ss5h24U9A5HW4jW/k693jOyxBQlofl8QG93vF 25l3mLTTDXAtK1B7ZrIX/qrKXNKbTaTb/8me3eXWbYyVIN388ub5GZEmN35ztl4LkjDN 2qV0NUNP8dPvdR/AVaYkpSjQqRFmKI9cpal0Og4RfHMC1X7J2Z33KR3XZvvaa4xVBUgC sn/tWLWGcmDNmH+QZm4yLFDL1P0cg9WS9jPV0oG+og10r8K096GmI8mTOl8BAphGAl/K 1UDWbstQTWG55B9OTxYvtkTEqSmPdkXO89KfIuDxg0cMArTH5Y3w45BGGix/BGm+tTVl ISVw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=D1sM0o7En1KJSUJWcNqINDtHCeg7Smx9YVEhpEZaHbw=; b=CgfDEDZ8UhkaOpXsGPxum+TYpn1MmwlT70GAFlB8ZcYDrng1Qo/2mo+C2EXXbJPMMx pxvK1XYDG87+Badf92lzYwAu6L9pim/gNbBWW8/xzfk4j823QrAaPA9kCM9tLopOgCA9 9eJMBxEb/f67SE+kXiDSWlHqAZuiEutbcZMZmy4J0zmbosp9MbhLIjsD+SsbpEY76+sz A4af//FCa/q/V6Ul+DtttPsni9oN28iamNagcPh6AQY6oHqvlRV40jfUqObCcbURERdk /Qc/uhp6k+wD/i6ZrKoZ77/twp9+/hs2KjV7vm1pwLWDYAzrP1j81TIlswdaLgSX51zN 8+ow== X-Gm-Message-State: APjAAAXIDtBXZUWWACrlcUyhmff92e0OU+oEtkEhymVVZZ8LOIWgx/Kr oR+Cp+HePPuJrAgBAPsKd4D5NlbXseoeJZv6FMnKZnmX X-Google-Smtp-Source: APXvYqy5nTP6KiK2Wi6nSgJzpAol4HkiUf4COeE1rxaqYdiVwAlM5NdfYWUqdn76qtlzHAcE3XzctGZGDAgo4t9Hf1I= X-Received: by 2002:a9d:3c5:: with SMTP id f63mr6134536otf.210.1560626886716; Sat, 15 Jun 2019 12:28:06 -0700 (PDT) In-Reply-To: <83wohmvpng.fsf@gnu.org> X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.51.188.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" Xref: news.gmane.org gmane.emacs.bugs:160629 Archived-At: --00000000000035e745058b61c372 Content-Type: text/plain; charset="UTF-8" On Sat, Jun 15, 2019 at 3:23 PM Eli Zaretskii wrote: > > From: Pip Cet > > Date: Sat, 15 Jun 2019 15:14:43 +0000 > > Cc: 36190@debbugs.gnu.org > > > > How about simply emulating (with-current-buffer buffer > > (put-text-property ...)), as the attached patch does? That should fix > > the immediate problem. > > Looks better to me, but I'd suggest a comment explaining why we do > such an unusual thing. Sounds good to me. The attached patch contains the comments and a hint in the documentation. (Maybe the comments should be a FIXME, because there's really no need to switch buffers at all when there are no applicable hooks?) Obviously, feel free to reword as you consider appropriate. --00000000000035e745058b61c372 Content-Type: text/x-patch; charset="US-ASCII"; name="0001-Update-current-buffer-when-changing-text-properties.patch" Content-Disposition: attachment; filename="0001-Update-current-buffer-when-changing-text-properties.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_jwxwpwq70 RnJvbSAwMTc4NGU2YjE2YzQwYWVmMzYyZjM5NTE5YTRlOGIyOTk4MmM4ZmNkIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBQaXAgQ2V0IDxwaXBjZXRAZ21haWwuY29tPgpEYXRlOiBTYXQs IDE1IEp1biAyMDE5IDE1OjEyOjE0ICswMDAwClN1YmplY3Q6IFtQQVRDSF0gVXBkYXRlIGN1cnJl bnQgYnVmZmVyIHdoZW4gY2hhbmdpbmcgdGV4dCBwcm9wZXJ0aWVzLgoKKiBzcmMvdGV4dHByb3Au YyAoYWRkX3RleHRfcHJvcGVydGllc18xLCBzZXRfdGV4dF9wcm9wZXJ0aWVzKQooc2V0X3RleHRf cHJvcGVydGllc18xLCBGcmVtb3ZlX3RleHRfcHJvcGVydGllcyk6Ci0tLQogZG9jL2xpc3ByZWYv dGV4dC50ZXhpIHwgIDIgKy0KIHNyYy90ZXh0cHJvcC5jICAgICAgICB8IDU4ICsrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIDIgZmlsZXMgY2hhbmdlZCwgNTkgaW5z ZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL2RvYy9saXNwcmVmL3RleHQu dGV4aSBiL2RvYy9saXNwcmVmL3RleHQudGV4aQppbmRleCAyZTdjNDk3ZjU3Li4wMzVmZWE2YTZi IDEwMDY0NAotLS0gYS9kb2MvbGlzcHJlZi90ZXh0LnRleGkKKysrIGIvZG9jL2xpc3ByZWYvdGV4 dC50ZXhpCkBAIC0yODAwLDcgKzI4MDAsNyBAQCBFeGFtaW5pbmcgUHJvcGVydGllcwogCiAgIFRo ZXNlIGZ1bmN0aW9ucyBoYW5kbGUgYm90aCBzdHJpbmdzIGFuZCBidWZmZXJzLiAgS2VlcCBpbiBt aW5kIHRoYXQKIHBvc2l0aW9ucyBpbiBhIHN0cmluZyBzdGFydCBmcm9tIDAsIHdoZXJlYXMgcG9z aXRpb25zIGluIGEgYnVmZmVyIHN0YXJ0Ci1mcm9tIDEuCitmcm9tIDEuICBQYXNzaW5nIGEgYnVm ZmVyIG90aGVyIHRoYW4gdGhlIGN1cnJlbnQgYnVmZmVyIG1heSBiZSBzbG93LgogCiBAZGVmdW4g Z2V0LXRleHQtcHJvcGVydHkgcG9zIHByb3AgJm9wdGlvbmFsIG9iamVjdAogVGhpcyBmdW5jdGlv biByZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgQHZhcntwcm9wfSBwcm9wZXJ0eSBvZiB0aGUKZGlm ZiAtLWdpdCBhL3NyYy90ZXh0cHJvcC5jIGIvc3JjL3RleHRwcm9wLmMKaW5kZXggYWU0MmM0NDE4 NS4uNTZmMjc2YjlhZCAxMDA2NDQKLS0tIGEvc3JjL3RleHRwcm9wLmMKKysrIGIvc3JjL3RleHRw cm9wLmMKQEAgLTExNDEsNiArMTE0MSwxNyBAQCBERUZVTiAoInByZXZpb3VzLXNpbmdsZS1wcm9w ZXJ0eS1jaGFuZ2UiLCBGcHJldmlvdXNfc2luZ2xlX3Byb3BlcnR5X2NoYW5nZSwKIGFkZF90ZXh0 X3Byb3BlcnRpZXNfMSAoTGlzcF9PYmplY3Qgc3RhcnQsIExpc3BfT2JqZWN0IGVuZCwKIAkJICAg ICAgIExpc3BfT2JqZWN0IHByb3BlcnRpZXMsIExpc3BfT2JqZWN0IG9iamVjdCwKIAkJICAgICAg IGVudW0gcHJvcGVydHlfc2V0X3R5cGUgc2V0X3R5cGUpIHsKKyAgLyogRW5zdXJlIHdlIHJ1biB0 aGUgbW9kaWZpY2F0aW9uIGhvb2tzIGZvciB0aGUgcmlnaHQgYnVmZmVyLAorICAgICB3aXRob3V0 IHN3aXRjaGluZyBidWZmZXJzIHR3aWNlIChidWcgMzYxOTApLiAqLworICBpZiAoQlVGRkVSUCAo b2JqZWN0KSAmJiBYQlVGRkVSIChvYmplY3QpICE9IGN1cnJlbnRfYnVmZmVyKQorICAgIHsKKyAg ICAgIHB0cmRpZmZfdCBjb3VudCA9IFNQRUNQRExfSU5ERVggKCk7CisgICAgICByZWNvcmRfdW53 aW5kX2N1cnJlbnRfYnVmZmVyICgpOworICAgICAgc2V0X2J1ZmZlcl9pbnRlcm5hbCAoWEJVRkZF UiAob2JqZWN0KSk7CisgICAgICByZXR1cm4gdW5iaW5kX3RvIChjb3VudCwgYWRkX3RleHRfcHJv cGVydGllc18xIChzdGFydCwgZW5kLCBwcm9wZXJ0aWVzLAorCQkJCQkJICAgICAgb2JqZWN0LCBz ZXRfdHlwZSkpOworICAgIH0KKwogICBJTlRFUlZBTCBpLCB1bmNoYW5nZWQ7CiAgIHB0cmRpZmZf dCBzLCBsZW47CiAgIGJvb2wgbW9kaWZpZWQgPSBmYWxzZTsKQEAgLTEzNDIsNiArMTM1MywxNyBA QCBmYWNlKHMpIGFyZSByZXRhaW5lZC4gIFRoaXMgaXMgZG9uZSBieSBzZXR0aW5nIHRoZSBgZmFj ZScgcHJvcGVydHkgdG8KIHNldF90ZXh0X3Byb3BlcnRpZXMgKExpc3BfT2JqZWN0IHN0YXJ0LCBM aXNwX09iamVjdCBlbmQsIExpc3BfT2JqZWN0IHByb3BlcnRpZXMsCiAJCSAgICAgTGlzcF9PYmpl Y3Qgb2JqZWN0LCBMaXNwX09iamVjdCBjb2hlcmVudF9jaGFuZ2VfcCkKIHsKKyAgLyogRW5zdXJl IHdlIHJ1biB0aGUgbW9kaWZpY2F0aW9uIGhvb2tzIGZvciB0aGUgcmlnaHQgYnVmZmVyLAorICAg ICB3aXRob3V0IHN3aXRjaGluZyBidWZmZXJzIHR3aWNlIChidWcgMzYxOTApLiAqLworICBpZiAo QlVGRkVSUCAob2JqZWN0KSAmJiBYQlVGRkVSIChvYmplY3QpICE9IGN1cnJlbnRfYnVmZmVyKQor ICAgIHsKKyAgICAgIHB0cmRpZmZfdCBjb3VudCA9IFNQRUNQRExfSU5ERVggKCk7CisgICAgICBy ZWNvcmRfdW53aW5kX2N1cnJlbnRfYnVmZmVyICgpOworICAgICAgc2V0X2J1ZmZlcl9pbnRlcm5h bCAoWEJVRkZFUiAob2JqZWN0KSk7CisgICAgICByZXR1cm4gdW5iaW5kX3RvIChjb3VudCwgc2V0 X3RleHRfcHJvcGVydGllcyAoc3RhcnQsIGVuZCwgcHJvcGVydGllcywKKwkJCQkJCSAgICBvYmpl Y3QsIGNvaGVyZW50X2NoYW5nZV9wKSk7CisgICAgfQorCiAgIElOVEVSVkFMIGk7CiAgIGJvb2wg Zmlyc3RfdGltZSA9IHRydWU7CiAKQEAgLTE0MTIsNiArMTQzNCwxOSBAQCBzZXRfdGV4dF9wcm9w ZXJ0aWVzIChMaXNwX09iamVjdCBzdGFydCwgTGlzcF9PYmplY3QgZW5kLCBMaXNwX09iamVjdCBw cm9wZXJ0aWVzLAogc2V0X3RleHRfcHJvcGVydGllc18xIChMaXNwX09iamVjdCBzdGFydCwgTGlz cF9PYmplY3QgZW5kLAogCQkgICAgICAgTGlzcF9PYmplY3QgcHJvcGVydGllcywgTGlzcF9PYmpl Y3Qgb2JqZWN0LCBJTlRFUlZBTCBpKQogeworICAvKiBFbnN1cmUgd2UgcnVuIHRoZSBtb2RpZmlj YXRpb24gaG9va3MgZm9yIHRoZSByaWdodCBidWZmZXIsCisgICAgIHdpdGhvdXQgc3dpdGNoaW5n IGJ1ZmZlcnMgdHdpY2UgKGJ1ZyAzNjE5MCkuICovCisgIGlmIChCVUZGRVJQIChvYmplY3QpICYm IFhCVUZGRVIgKG9iamVjdCkgIT0gY3VycmVudF9idWZmZXIpCisgICAgeworICAgICAgcHRyZGlm Zl90IGNvdW50ID0gU1BFQ1BETF9JTkRFWCAoKTsKKyAgICAgIHJlY29yZF91bndpbmRfY3VycmVu dF9idWZmZXIgKCk7CisgICAgICBzZXRfYnVmZmVyX2ludGVybmFsIChYQlVGRkVSIChvYmplY3Qp KTsKKworICAgICAgc2V0X3RleHRfcHJvcGVydGllc18xIChzdGFydCwgZW5kLCBwcm9wZXJ0aWVz LCBvYmplY3QsIGkpOworICAgICAgdW5iaW5kX3RvIChjb3VudCwgUW5pbCk7CisgICAgICByZXR1 cm47CisgICAgfQorCiAgIElOVEVSVkFMIHByZXZfY2hhbmdlZCA9IE5VTEw7CiAgIHB0cmRpZmZf dCBzID0gWEZJWE5VTSAoc3RhcnQpOwogICBwdHJkaWZmX3QgbGVuID0gWEZJWE5VTSAoZW5kKSAt IHM7CkBAIC0xNDk0LDYgKzE1MjksMTcgQEAgREVGVU4gKCJyZW1vdmUtdGV4dC1wcm9wZXJ0aWVz IiwgRnJlbW92ZV90ZXh0X3Byb3BlcnRpZXMsCiBVc2UgYHNldC10ZXh0LXByb3BlcnRpZXMnIGlm IHlvdSB3YW50IHRvIHJlbW92ZSBhbGwgdGV4dCBwcm9wZXJ0aWVzLiAgKi8pCiAgIChMaXNwX09i amVjdCBzdGFydCwgTGlzcF9PYmplY3QgZW5kLCBMaXNwX09iamVjdCBwcm9wZXJ0aWVzLCBMaXNw X09iamVjdCBvYmplY3QpCiB7CisgIC8qIEVuc3VyZSB3ZSBydW4gdGhlIG1vZGlmaWNhdGlvbiBo b29rcyBmb3IgdGhlIHJpZ2h0IGJ1ZmZlciwKKyAgICAgd2l0aG91dCBzd2l0Y2hpbmcgYnVmZmVy cyB0d2ljZSAoYnVnIDM2MTkwKS4gKi8KKyAgaWYgKEJVRkZFUlAgKG9iamVjdCkgJiYgWEJVRkZF UiAob2JqZWN0KSAhPSBjdXJyZW50X2J1ZmZlcikKKyAgICB7CisgICAgICBwdHJkaWZmX3QgY291 bnQgPSBTUEVDUERMX0lOREVYICgpOworICAgICAgcmVjb3JkX3Vud2luZF9jdXJyZW50X2J1ZmZl ciAoKTsKKyAgICAgIHNldF9idWZmZXJfaW50ZXJuYWwgKFhCVUZGRVIgKG9iamVjdCkpOworICAg ICAgcmV0dXJuIHVuYmluZF90byAoY291bnQsIEZyZW1vdmVfdGV4dF9wcm9wZXJ0aWVzIChzdGFy dCwgZW5kLCBwcm9wZXJ0aWVzLAorCQkJCQkJCW9iamVjdCkpOworICAgIH0KKwogICBJTlRFUlZB TCBpLCB1bmNoYW5nZWQ7CiAgIHB0cmRpZmZfdCBzLCBsZW47CiAgIGJvb2wgbW9kaWZpZWQgPSBm YWxzZTsKQEAgLTE2MDYsNiArMTY1MiwxOCBAQCBERUZVTiAoInJlbW92ZS1saXN0LW9mLXRleHQt cHJvcGVydGllcyIsIEZyZW1vdmVfbGlzdF9vZl90ZXh0X3Byb3BlcnRpZXMsCiBSZXR1cm4gdCBp ZiBhbnkgcHJvcGVydHkgd2FzIGFjdHVhbGx5IHJlbW92ZWQsIG5pbCBvdGhlcndpc2UuICAqLykK ICAgKExpc3BfT2JqZWN0IHN0YXJ0LCBMaXNwX09iamVjdCBlbmQsIExpc3BfT2JqZWN0IGxpc3Rf b2ZfcHJvcGVydGllcywgTGlzcF9PYmplY3Qgb2JqZWN0KQogeworICAvKiBFbnN1cmUgd2UgcnVu IHRoZSBtb2RpZmljYXRpb24gaG9va3MgZm9yIHRoZSByaWdodCBidWZmZXIsCisgICAgIHdpdGhv dXQgc3dpdGNoaW5nIGJ1ZmZlcnMgdHdpY2UgKGJ1ZyAzNjE5MCkuICovCisgIGlmIChCVUZGRVJQ IChvYmplY3QpICYmIFhCVUZGRVIgKG9iamVjdCkgIT0gY3VycmVudF9idWZmZXIpCisgICAgewor ICAgICAgcHRyZGlmZl90IGNvdW50ID0gU1BFQ1BETF9JTkRFWCAoKTsKKyAgICAgIHJlY29yZF91 bndpbmRfY3VycmVudF9idWZmZXIgKCk7CisgICAgICBzZXRfYnVmZmVyX2ludGVybmFsIChYQlVG RkVSIChvYmplY3QpKTsKKyAgICAgIHJldHVybiB1bmJpbmRfdG8gKGNvdW50LCBGcmVtb3ZlX2xp c3Rfb2ZfdGV4dF9wcm9wZXJ0aWVzIChzdGFydCwgZW5kLAorCQkJCQkJCQlsaXN0X29mX3Byb3Bl cnRpZXMsCisJCQkJCQkJCW9iamVjdCkpOworICAgIH0KKwogICBJTlRFUlZBTCBpLCB1bmNoYW5n ZWQ7CiAgIHB0cmRpZmZfdCBzLCBsZW47CiAgIGJvb2wgbW9kaWZpZWQgPSBmYWxzZTsKLS0gCjIu MjAuMQoK --00000000000035e745058b61c372--