emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] emacs-24 r117163: * lisp/simple.el (deactivate-mark): Set


From: Stefan Monnier
Subject: [Emacs-diffs] emacs-24 r117163: * lisp/simple.el (deactivate-mark): Set mark-active to nil even if deactivation
Date: Tue, 27 May 2014 14:59:16 +0000
User-agent: Bazaar (2.6b2)

------------------------------------------------------------
revno: 117163
revision-id: address@hidden
parent: address@hidden
committer: Stefan Monnier <address@hidden>
branch nick: emacs-24
timestamp: Tue 2014-05-27 10:59:08 -0400
message:
  * lisp/simple.el (deactivate-mark): Set mark-active to nil even if 
deactivation
  is done via setting transient-mark-mode to nil, since one is
  buffer-local and the other is global.
modified:
  lisp/ChangeLog                 changelog-20091113204419-o5vbwnq5f7feedwu-1432
  lisp/simple.el                 simple.el-20091113204419-o5vbwnq5f7feedwu-403
=== modified file 'lisp/ChangeLog'
--- a/lisp/ChangeLog    2014-05-27 14:56:03 +0000
+++ b/lisp/ChangeLog    2014-05-27 14:59:08 +0000
@@ -1,5 +1,9 @@
 2014-05-27  Stefan Monnier  <address@hidden>
 
+       * simple.el (deactivate-mark): Set mark-active to nil even if 
deactivation
+       is done via setting transient-mark-mode to nil, since one is
+       buffer-local and the other is global.
+
        * emacs-lisp/byte-opt.el (byte-optimize-binary-predicate): Don't assume
        there can't be more than 2 arguments (bug#17584).
 

=== modified file 'lisp/simple.el'
--- a/lisp/simple.el    2014-05-27 01:53:45 +0000
+++ b/lisp/simple.el    2014-05-27 14:59:08 +0000
@@ -4412,17 +4412,13 @@
             (x-set-selection 'PRIMARY
                               (funcall region-extract-function nil)))))
     (when mark-active (force-mode-line-update)) ;Refresh toolbar (bug#16382).
-    (if (and (null force)
-            (or (eq transient-mark-mode 'lambda)
-                (and (eq (car-safe transient-mark-mode) 'only)
-                     (null (cdr transient-mark-mode)))))
-       ;; When deactivating a temporary region, don't change
-       ;; `mark-active' or run `deactivate-mark-hook'.
-       (setq transient-mark-mode nil)
-      (if (eq (car-safe transient-mark-mode) 'only)
-         (setq transient-mark-mode (cdr transient-mark-mode)))
-      (setq mark-active nil)
-      (run-hooks 'deactivate-mark-hook))
+    (cond
+     ((eq (car-safe transient-mark-mode) 'only)
+      (setq transient-mark-mode (cdr transient-mark-mode)))
+     ((eq transient-mark-mode 'lambda)
+      (setq transient-mark-mode nil)))
+    (setq mark-active nil)
+    (run-hooks 'deactivate-mark-hook)
     (redisplay--update-region-highlight (selected-window))))
 
 (defun activate-mark (&optional no-tmm)


reply via email to

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