From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.ciao.gmane.io!not-for-mail From: Paul Eggert Newsgroups: gmane.emacs.devel Subject: =?UTF-8?Q?Re=3a_31395511=3a_=22Don=e2=80=99t_attempt_to_modify_cons?= =?UTF-8?Q?tant_strings=22?= Date: Wed, 3 Jun 2020 18:19:54 -0700 Organization: UCLA Computer Science Department Message-ID: References: <871rmvn7ge.fsf@gmail.com> <87lfl36abx.fsf@gmail.com> <1abe5965-b48e-6dee-1516-c5c233f09d01@cs.ucla.edu> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------D71B70384A0127EBC3173BDD" Injection-Info: ciao.gmane.io; posting-host="ciao.gmane.io:159.69.161.202"; logging-data="13197"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.8.0 Cc: Pip Cet , emacs-devel To: =?UTF-8?B?Sm/Do28gVMOhdm9yYQ==?= Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Thu Jun 04 03:20:42 2020 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1jgeYk-0003OM-20 for ged-emacs-devel@m.gmane-mx.org; Thu, 04 Jun 2020 03:20:42 +0200 Original-Received: from localhost ([::1]:60682 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jgeYj-0000is-4R for ged-emacs-devel@m.gmane-mx.org; Wed, 03 Jun 2020 21:20:41 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:40144) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jgeY4-0000Gk-7j for emacs-devel@gnu.org; Wed, 03 Jun 2020 21:20:00 -0400 Original-Received: from zimbra.cs.ucla.edu ([131.179.128.68]:58606) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jgeY2-0007Yl-Hx for emacs-devel@gnu.org; Wed, 03 Jun 2020 21:19:59 -0400 Original-Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id 9D84F160097; Wed, 3 Jun 2020 18:19:55 -0700 (PDT) Original-Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id 9cWTo2FXxsRm; Wed, 3 Jun 2020 18:19:54 -0700 (PDT) Original-Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id 8B9A71600C8; Wed, 3 Jun 2020 18:19:54 -0700 (PDT) X-Virus-Scanned: amavisd-new at zimbra.cs.ucla.edu Original-Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id IK-lioOeCE0z; Wed, 3 Jun 2020 18:19:54 -0700 (PDT) Original-Received: from [192.168.1.9] (cpe-23-242-74-103.socal.res.rr.com [23.242.74.103]) by zimbra.cs.ucla.edu (Postfix) with ESMTPSA id 5F38B160097; Wed, 3 Jun 2020 18:19:54 -0700 (PDT) Autocrypt: addr=eggert@cs.ucla.edu; prefer-encrypt=mutual; keydata= LS0tLS1CRUdJTiBQR1AgUFVCTElDIEtFWSBCTE9DSy0tLS0tCgptUUlOQkV5QWNtUUJFQURB QXlIMnhvVHU3cHBHNUQzYThGTVpFb243NGRDdmM0K3ExWEEySjJ0QnkycHdhVHFmCmhweHhk R0E5Smo1MFVKM1BENGJTVUVnTjh0TFowc2FuNDdsNVhUQUZMaTI0NTZjaVNsNW04c0thSGxH ZHQ5WG0KQUF0bVhxZVpWSVlYL1VGUzk2ZkR6ZjR4aEVtbS95N0xiWUVQUWRVZHh1NDd4QTVL aFRZcDVibHRGM1dZRHoxWQpnZDdneDA3QXV3cDdpdzdlTnZub0RUQWxLQWw4S1lEWnpiRE5D UUdFYnBZM2VmWkl2UGRlSStGV1FONFcra2doCnkrUDZhdTZQcklJaFlyYWV1YTdYRGRiMkxT MWVuM1NzbUUzUWpxZlJxSS9BMnVlOEpNd3N2WGUvV0szOEV6czYKeDc0aVRhcUkzQUZINmls QWhEcXBNbmQvbXNTRVNORnQ3NkRpTzFaS1FNcjlhbVZQa25qZlBtSklTcWRoZ0IxRApsRWR3 MzRzUk9mNlY4bVp3MHhmcVQ2UEtFNDZMY0ZlZnpzMGtiZzRHT1JmOHZqRzJTZjF0azVlVThN Qml5Ti9iClowM2JLTmpOWU1wT0REUVF3dVA4NGtZTGtYMndCeHhNQWhCeHdiRFZadWR6eERa SjFDMlZYdWpDT0pWeHEya2wKakJNOUVUWXVVR3FkNzVBVzJMWHJMdzYrTXVJc0hGQVlBZ1Jy NytLY3dEZ0JBZndoU In-Reply-To: <1abe5965-b48e-6dee-1516-c5c233f09d01@cs.ucla.edu> Content-Language: en-US Received-SPF: pass client-ip=131.179.128.68; envelope-from=eggert@cs.ucla.edu; helo=zimbra.cs.ucla.edu X-detected-operating-system: by eggs.gnu.org: First seen = 2020/06/03 18:41:05 X-ACL-Warn: Detected OS = Linux 3.1-3.10 X-Spam_score_int: -41 X-Spam_score: -4.2 X-Spam_bar: ---- X-Spam_report: (-4.2 / 5.0 requ) BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, SPF_PASS=-0.001, URIBL_BLOCKED=0.001 autolearn=_AUTOLEARN X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:251841 Archived-At: This is a multi-part message in MIME format. --------------D71B70384A0127EBC3173BDD Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable On 6/3/20 5:43 PM, Paul Eggert wrote: > On 6/3/20 4:48 PM, Jo=C3=A3o T=C3=A1vora wrote: >> I think I'd rather this previous behavior were retained, or at least >> achievable by request. >=20 > It's tricky, as make-text-button in emacs-27 (and earlier) modifies its= string > argument, which is buggy because string constants are not always unique= . On second thought, I'll work on coming up with a better workaround for th= e problem along the lines I suggested in my previous message: make-text-but= ton can copy the button label string only if the string's not mutable. I hope thi= s helps with SLY (as I hope SLY is not trying to modify string literals...). In t= he meantime I've reverted the change by installing the attached patch; this = means the bug I mentioned in my previous message remains unfixed. --------------D71B70384A0127EBC3173BDD Content-Type: text/x-patch; charset=UTF-8; name="0001-Revert-make-text-button-string-copy.patch" Content-Disposition: attachment; filename="0001-Revert-make-text-button-string-copy.patch" Content-Transfer-Encoding: quoted-printable >From dd3484bedb7f0207c64ed391d1d7e699741e9917 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Wed, 3 Jun 2020 18:15:54 -0700 Subject: [PATCH] Revert make-text-button string copy MIME-Version: 1.0 Content-Type: text/plain; charset=3DUTF-8 Content-Transfer-Encoding: 8bit * lisp/button.el (make-text-button): Don=E2=80=99t make a copy of a button=E2=80=99s string label. This reverts the change made in 2020-05-17T05:23:28Z!eggert@cs.ucla.edu, which broke SLY. Problem reported by Jo=C3=A3o T=C3=A1vora in: https://lists.gnu.org/r/emacs-devel/2020-06/msg00117.html However, we=E2=80=99ll need a better fix for this once string literals become contents, if SLY uses string constants for text button labels. --- lisp/button.el | 1 - 1 file changed, 1 deletion(-) diff --git a/lisp/button.el b/lisp/button.el index a91b0482ac..3a6a6de774 100644 --- a/lisp/button.el +++ b/lisp/button.el @@ -349,7 +349,6 @@ make-text-button (or (plist-member properties 'type) (plist-member properties :type)))) (when (stringp beg) - (setq beg (copy-sequence beg)) ;; In case BEG is not mutable. (setq object beg beg 0 end (length object))) ;; Disallow setting the `category' property directly. (when (plist-get properties 'category) --=20 2.25.4 --------------D71B70384A0127EBC3173BDD--