Subject: bug#25992: perform-replace leaves mark-active when not transient-mark-mode

From: Keith David Bershatsky <[email-masked]>
Date: Mon, 06 Mar 2017 21:55:47 -0800

Thank you very much for the suggestion to check 'mark' prior to calling either 'region-beginning' or 'region-end', as an alternative to testing the variable 'mark-active'.

Keith

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

DATE:  Mon, 06 Mar 2017 20:45:32 +0200
FROM:  Eli Zaretskii <[email-masked]>
> 
>  transient-mark-mode
> 
> > Date:  Mon, 06 Mar 2017 09:06:56 -0800
> > From:  Keith David Bershatsky <[email-masked]>
> > Cc:  [email-masked]
> > 
> > In a custom test to determine whether the region is active, I had been testing mark-active prior to using (region-beginning) and/or (region-end) to avoid trowing an error "The mark is not set now, so there is no region".  When the following is true `(and mark-active (= (region-beginning) (region-end)))`, my custom function should return nil.
> 
> Why can't you just check whether the function 'mark' returns nil?