From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED.blaine.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.bugs Subject: bug#34720: 26.1; Reverting a GPG buffer moves all markers to the end of the file Date: Mon, 26 Aug 2019 10:59:18 +0300 Message-ID: <83sgpofjc9.fsf@gnu.org> References: <87a7ic9due.fsf@gnu.org> <87muhnrwvs.fsf@mouse.gnus.org> <875zmk5r5u.fsf@gnus.org> Injection-Info: blaine.gmane.org; posting-host="blaine.gmane.org:195.159.176.226"; logging-data="18259"; mail-complaints-to="usenet@blaine.gmane.org" Cc: 34720@debbugs.gnu.org, dunni@gnu.org To: Lars Ingebrigtsen Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Mon Aug 26 10:02:29 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 1i29xN-0004aI-2u for geb-bug-gnu-emacs@m.gmane.org; Mon, 26 Aug 2019 10:02:29 +0200 Original-Received: from localhost ([::1]:50702 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1i29xL-0002wN-Mu for geb-bug-gnu-emacs@m.gmane.org; Mon, 26 Aug 2019 04:02:27 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:43364) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1i29v2-0001Nk-4z for bug-gnu-emacs@gnu.org; Mon, 26 Aug 2019 04:00:05 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1i29v1-0006UC-02 for bug-gnu-emacs@gnu.org; Mon, 26 Aug 2019 04:00:04 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:36713) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1i29v0-0006U3-Rn for bug-gnu-emacs@gnu.org; Mon, 26 Aug 2019 04:00:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1i29v0-0003aN-My for bug-gnu-emacs@gnu.org; Mon, 26 Aug 2019 04:00:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 26 Aug 2019 08:00:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 34720 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: confirmed Original-Received: via spool by 34720-submit@debbugs.gnu.org id=B34720.156680636513713 (code B ref 34720); Mon, 26 Aug 2019 08:00:02 +0000 Original-Received: (at 34720) by debbugs.gnu.org; 26 Aug 2019 07:59:25 +0000 Original-Received: from localhost ([127.0.0.1]:45534 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1i29uP-0003Z7-2p for submit@debbugs.gnu.org; Mon, 26 Aug 2019 03:59:25 -0400 Original-Received: from eggs.gnu.org ([209.51.188.92]:34784) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1i29uN-0003Ys-W4 for 34720@debbugs.gnu.org; Mon, 26 Aug 2019 03:59:24 -0400 Original-Received: from fencepost.gnu.org ([2001:470:142:3::e]:35699) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1i29uI-00061f-O7; Mon, 26 Aug 2019 03:59:18 -0400 Original-Received: from [176.228.60.248] (port=4598 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1i29uH-0001yv-B6; Mon, 26 Aug 2019 03:59:18 -0400 In-reply-to: <875zmk5r5u.fsf@gnus.org> (message from Lars Ingebrigtsen on Mon, 26 Aug 2019 09:20:29 +0200) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] 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:165890 Archived-At: > From: Lars Ingebrigtsen > Date: Mon, 26 Aug 2019 09:20:29 +0200 > Cc: 34720@debbugs.gnu.org > > Lars Ingebrigtsen writes: > > >> 1. Open a GnuPG encrypted file > >> 2. Run the following: > >> (setq test-marker (make-marker)) > >> (move-marker test-marker (point-marker)) > >> ;; test-marker points to `point' > >> 3. Revert the buffer > >> ;; test-marker now points to the end of the buffer Markers cannot be preserved in every situation, there's no way around this basic fact. > The third is that the interface to the new replace-buffer-contents > function is really awkward -- it only takes a buffer as its SOURCE, > which means that if you want to feed it something, you have to skip > around to temporary buffers instead of feeding it a string, which would > be natural. You have to be a with-temp-buffer/with-current-buffer/let > contortionist to get it to be safe. replace-buffer-contents is a primitive, so it can legitimately rely on Lisp programs to set up whatever preconditions it needs for it to work. It MUST have a buffer to work with; if you want to replace with a string, insert that string into a buffer and call the primitive. Why is that a problem? > Would anybody mind if I just write a `with-saved-markers' macro in > subr-x, which would make all these problems to away and make the > solution a two-liner in epa itself? What would that macro do, exactly?