From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Michael Heerdegen Newsgroups: gmane.emacs.bugs Subject: bug#33341: 27.0.50; Undo log merging and change groups Date: Sun, 11 Nov 2018 08:50:43 +0100 Message-ID: <877ehk3ve4.fsf@web.de> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: blaine.gmane.org 1541922608 29868 195.159.176.226 (11 Nov 2018 07:50:08 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Sun, 11 Nov 2018 07:50:08 +0000 (UTC) User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (gnu/linux) Cc: Stefan Monnier To: 33341@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Sun Nov 11 08:50:04 2018 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1gLkVP-0007c5-Ca for geb-bug-gnu-emacs@m.gmane.org; Sun, 11 Nov 2018 08:50:03 +0100 Original-Received: from localhost ([::1]:41267 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gLkXV-0000Nd-JF for geb-bug-gnu-emacs@m.gmane.org; Sun, 11 Nov 2018 02:52:13 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:42545) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gLkXN-0000MV-Ed for bug-gnu-emacs@gnu.org; Sun, 11 Nov 2018 02:52:06 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gLkXK-0007Yw-5w for bug-gnu-emacs@gnu.org; Sun, 11 Nov 2018 02:52:05 -0500 Original-Received: from debbugs.gnu.org ([208.118.235.43]:41000) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1gLkXK-0007Xd-1W for bug-gnu-emacs@gnu.org; Sun, 11 Nov 2018 02:52:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1gLkXJ-0004Hp-RG for bug-gnu-emacs@gnu.org; Sun, 11 Nov 2018 02:52:01 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Michael Heerdegen Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 11 Nov 2018 07:52:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 33341 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Original-Received: via spool by submit@debbugs.gnu.org id=B.154192266816408 (code B ref -1); Sun, 11 Nov 2018 07:52:01 +0000 Original-Received: (at submit) by debbugs.gnu.org; 11 Nov 2018 07:51:08 +0000 Original-Received: from localhost ([127.0.0.1]:45258 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1gLkWS-0004Ga-80 for submit@debbugs.gnu.org; Sun, 11 Nov 2018 02:51:08 -0500 Original-Received: from eggs.gnu.org ([208.118.235.92]:32820) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1gLkWQ-0004G7-Gc for submit@debbugs.gnu.org; Sun, 11 Nov 2018 02:51:06 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gLkWI-0002Ak-CW for submit@debbugs.gnu.org; Sun, 11 Nov 2018 02:50:59 -0500 Original-Received: from lists.gnu.org ([2001:4830:134:3::11]:40502) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1gLkWG-00021l-JQ for submit@debbugs.gnu.org; Sun, 11 Nov 2018 02:50:58 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:42424) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gLkWF-0008IN-EO for bug-gnu-emacs@gnu.org; Sun, 11 Nov 2018 02:50:56 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gLkWC-0001hu-8w for bug-gnu-emacs@gnu.org; Sun, 11 Nov 2018 02:50:55 -0500 Original-Received: from mout.web.de ([212.227.15.4]:43277) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1gLkWB-0001c3-Sz for bug-gnu-emacs@gnu.org; Sun, 11 Nov 2018 02:50:52 -0500 Original-Received: from drachen.dragon ([94.218.210.177]) by smtp.web.de (mrweb002 [213.165.67.108]) with ESMTPSA (Nemesis) id 0LhvYQ-1fhTp10EQk-00n5Z5; Sun, 11 Nov 2018 08:50:45 +0100 X-Provags-ID: V03:K1:uyiAsJ0PIa9dwunu4tf4X+G2//qAbaOed4nRL6pPc6GvHKMGcwX tTIxj5pxArbufh1eUnK87ykja2SLSADjAyEZgX8lRn9b6TOn8/tHZK6ho0wTmUAc96+ZKat +eOZQPuhAv90GEiKwPt+lTi/XJHK8UpOSNrb0+4v1lQ73zOPKusuUxwSx0hx+3oydEXQVJz hW6QZpBII9qQ0zQ1WPu8w== X-UI-Out-Filterresults: notjunk:1;V01:K0:xyIcJwCjVRA=:1S7tP567defIR7fYnGV/uQ tkP08MVtCofvD56nOHeipY3TFn1lJnjJcp2DYUR9xlGVXIuOvg5kf3/rToDeUDqS+C7BREWvJ ST08t/lTfGpWVuHrMuJkW/3tRkqPyXl0+IsARMeCj2VFpvg2EoVXC/m9wndPFTrPrWRexipPi HwA57hokG+B2oY3buf2zed9RIAubbLMCKcdMAbiZGKy4BLGiKldhjFF3RVR0WW08C+LBbcAaS LwmHkDR/AK5WQxUB/RWok8M5JloPEwqcS45iqIWPxAx0+l2ufQjmJq75T/DMXPZ2j9ehMf9HW 6Kownu9DSztqmGPd+vXj/+MjUfiN6A+/YcG2GjR8msKqyv1pSpYTtjgfkq89gNJuqt0iQf07A DwyNDcy7O9+2qMMtYW0vVCSBzH9PdDRwv0r32K9Yg+ICJCrLeZr/FWl3uSSV2/FhIKIPrQi+B lADOjntR5dyEaieBlzqq0TNR4b+q2J0fujJX3byv8KdF+ALeJ0fvcRs4PIn1efbguLevaIboE nE5R/eGZdSgu+YwzE5RKHAopGAcPtOPLvfKw6heUsIKbtdSgaCum0LsGcEwjWJ068+VZsf20A UYZWJUc5Atf6220NR4L79dN7Yn/px3Qi3PQRX/wNVLX2FDDGZsfaNrgZYmoYGkteEF9agCN8x MUUHIbP9Ay7ou1usf2pPKaJDWz2JTY71/2X7dhPbA7r3OUWdmdqZt/SlTJUw6cOeZNIUcOezk vZXtsQTF6VEOtc92I1TAvHrd9n5yu9cCMWgxNm8f3OjbOLHMchyaQenLEyaeBdoD8yLHnsTb X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x 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: 208.118.235.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:152286 Archived-At: Hello, I have been playing with the undo change group functions. I found `cancel-change-group' does not always work as expected. For example, if you define (defun my-test-change-groups () (interactive) (insert "0\n") (let ((g (prepare-change-group))) (activate-change-group g) (insert "b\n") (insert "c\n") (cancel-change-group g))) and call that command in some random buffer, the final `cancel-change-group' has no effect (i.e. nothing is reverted). In other, similar examples, `cancel-change-group' seems to revert more than it should. To cite (CC'd) Stefan's remark in emacs-help, "the undo entries for (insert "0\n"), (insert "b\n"), and (insert "c\n") are merged into a single entry in the undo log (as a form of optimization). The change-group code should prevent such a merge, e.g. by adding some dummy undo element which will work like a "fence"". Thanks, Michael. In GNU Emacs 27.0.50 (build 8, x86_64-pc-linux-gnu, GTK+ Version 3.24.1) of 2018-11-11 built on drachen Repository revision: c1095b03a933d55fe1cd357881f1ca6e16e06362 Repository branch: master Windowing system distributor 'The X.Org Foundation', version 11.0.12003000 System Description: Debian GNU/Linux buster/sid