# HG changeset patch # User Richard M. Stallman # Date 778207008 0 # Node ID bb7bd2b068bff89b7514b85e2176ce5df5a7b88f # Parent 611c63ebc7783297856867924ec38e6eb2cdd06e (set-mark): When POS is nil, always clear mark-active. diff -r 611c63ebc778 -r bb7bd2b068bf lisp/simple.el --- a/lisp/simple.el Tue Aug 30 00:34:35 1994 +0000 +++ b/lisp/simple.el Tue Aug 30 00:36:48 1994 +0000 @@ -1335,8 +1335,12 @@ (setq mark-active t) (run-hooks 'activate-mark-hook) (set-marker (mark-marker) pos (current-buffer))) - (deactivate-mark) - (set-marker (mark-marker) pos (current-buffer)))) + ;; Normally we never clear mark-active except in Transient Mark mode. + ;; But when we actually clear out the mark value too, + ;; we must clear mark-active in any mode. + (setq mark-active nil) + (run-hooks 'deactivate-mark-hook) + (set-marker (mark-marker) nil))) (defvar mark-ring nil "The list of saved former marks of the current buffer,