emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

emacs-29 84963956535: * lisp/outline.el (outline--fix-buttons-after-chan


From: Juri Linkov
Subject: emacs-29 84963956535: * lisp/outline.el (outline--fix-buttons-after-change): Add save-match-data.
Date: Wed, 22 Mar 2023 03:45:12 -0400 (EDT)

branch: emacs-29
commit 84963956535e9eff38b0d7638ce751039eb44bc2
Author: Juri Linkov <juri@linkov.net>
Commit: Juri Linkov <juri@linkov.net>

    * lisp/outline.el (outline--fix-buttons-after-change): Add save-match-data.
    
    It's important for a hook in after-change-functions not to change 
match-data.
    Otherwise it breaks functions that make changes in the buffer, such as
    for example, successive calls to delete-region in smerge-keep-n, etc.
---
 lisp/outline.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lisp/outline.el b/lisp/outline.el
index a89985d1990..0e90c59c285 100644
--- a/lisp/outline.el
+++ b/lisp/outline.el
@@ -1877,7 +1877,7 @@ With a prefix argument, show headings up to that LEVEL."
   (save-excursion (goto-char beg) (setq beg (pos-bol)))
   (save-excursion (goto-char end) (setq end (pos-eol)))
   (remove-overlays beg end 'outline-button t)
-  (outline--fix-up-all-buttons beg end))
+  (save-match-data (outline--fix-up-all-buttons beg end)))
 
 
 (defvar-keymap outline-navigation-repeat-map



reply via email to

[Prev in Thread] Current Thread [Next in Thread]