emacs-diffs
[Top][All Lists]
Advanced

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

emacs-27 4ec7408: Make the invocation of combine-change-calls in comment


From: Alan Mackenzie
Subject: emacs-27 4ec7408: Make the invocation of combine-change-calls in comment-region valid
Date: Sun, 15 Nov 2020 08:26:05 -0500 (EST)

branch: emacs-27
commit 4ec740866a65761fa1318400f299b2d591b05acf
Author: Alan Mackenzie <acm@muc.de>
Commit: Alan Mackenzie <acm@muc.de>

    Make the invocation of combine-change-calls in comment-region valid
    
    This fixes bug #44581.  The problem was that whitespace outside of the (BEG
    END) region was being deleted, and this made the invocation of
    combine-change-calls with (BEG END) invalid.
    
    * lisp/newcomment.el (comment-region-default): Amend the second argument to
    combine-change-calls.
---
 lisp/newcomment.el | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/lisp/newcomment.el b/lisp/newcomment.el
index e111ae8..3eb158d 100644
--- a/lisp/newcomment.el
+++ b/lisp/newcomment.el
@@ -1292,7 +1292,15 @@ changed with `comment-style'."
 
 (defun comment-region-default (beg end &optional arg)
   (if comment-combine-change-calls
-      (combine-change-calls beg end (comment-region-default-1 beg end arg))
+      (combine-change-calls beg
+          ;; A new line might get inserted and whitespace deleted
+          ;; after END for line comments.  Ensure the next argument is
+          ;; after any and all changes.
+          (save-excursion
+            (goto-char end)
+            (forward-line)
+            (point))
+        (comment-region-default-1 beg end arg))
     (comment-region-default-1 beg end arg)))
 
 ;;;###autoload



reply via email to

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