* bug#24556: 25.1.50; Undo partially broken in patch mode
@ 2016-09-28 13:28 Clément Pit--Claudel
2019-06-25 0:15 ` Lars Ingebrigtsen
0 siblings, 1 reply; 2+ messages in thread
From: Clément Pit--Claudel @ 2016-09-28 13:28 UTC (permalink / raw)
To: 24556
[-- Attachment #1.1: Type: text/plain, Size: 1184 bytes --]
Recipe in emacs -Q:
* Open a patch or diff file
* Press C-c C-d [diff-unified->context]
* Press C-_ [undo]
Undo fails with the following backtrace:
Debugger entered--Lisp error: (error "Changes to be undone by function different than announced")
signal(error ("Changes to be undone by function different than announced"))
error("Changes to be undone by function different than announced")
primitive-undo(1 ((apply -274 1289 9209 diff-context->unified 1289 9209) (apply -271 514 1289 diff-context->unified 514 1289) (#("---" 0 3 (fontified t face diff-header)) . 478) (481 . 484) (#("+++" 0 3 (fontified t face diff-header)) . 496) (t 22126 61486 433935 691000) (t 22126 61486 433935 691000) (499 . 502) (t 22126 61486 433935 691000)))
undo-more(1)
undo(nil)
funcall-interactively(undo nil)
call-interactively(undo nil nil)
command-execute(undo)
Clément.
In GNU Emacs 25.1.50.7 (x86_64-pc-linux-gnu, GTK+ Version 3.18.9)
of 2016-07-20 built on clem-w50-mint
Repository revision: a1a0c208e3e895a6ea0942e8e5c4077faf12c7ad
Windowing system distributor 'The X.Org Foundation', version 11.0.11803000
System Description: Linux Mint 18 Sarah
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 819 bytes --]
^ permalink raw reply [flat|nested] 2+ messages in thread
* bug#24556: 25.1.50; Undo partially broken in patch mode
2016-09-28 13:28 bug#24556: 25.1.50; Undo partially broken in patch mode Clément Pit--Claudel
@ 2019-06-25 0:15 ` Lars Ingebrigtsen
0 siblings, 0 replies; 2+ messages in thread
From: Lars Ingebrigtsen @ 2019-06-25 0:15 UTC (permalink / raw)
To: Clément Pit--Claudel; +Cc: 24556
Clément Pit--Claudel <clement.pitclaudel@live.com> writes:
> Recipe in emacs -Q:
>
> * Open a patch or diff file
> * Press C-c C-d [diff-unified->context]
> * Press C-_ [undo]
>
> Undo fails with the following backtrace:
>
> Debugger entered--Lisp error: (error "Changes to be undone by function different than announced")
> signal(error ("Changes to be undone by function different than announced"))
I can confirm that this is still the case.
This code in diff-unified->context certainly looks like a likely culprit:
(unless (or (not reversible) (eq buffer-undo-list t))
;; Drop the many undo entries and replace them with
;; a single entry that uses diff-context->unified to do
;; the work.
(setq buffer-undo-list
(cons (list 'apply (- old-end end) start (point-max)
'diff-context->unified start (point-max))
old-undo)))))))))))
--
(domestic pets only, the antidote for overdose, milk.)
bloggy blog: http://lars.ingebrigtsen.no
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2019-06-25 0:15 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-09-28 13:28 bug#24556: 25.1.50; Undo partially broken in patch mode Clément Pit--Claudel
2019-06-25 0:15 ` Lars Ingebrigtsen
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.