GNU bug report logs - #10738
insert before setting the mark means the mark wont be set

Previous Next

Package: emacs;

Reported by: Christopher Monsanto <chris <at> monsan.to>

Date: Mon, 6 Feb 2012 18:04:02 UTC

Severity: normal

Tags: notabug

Done: Glenn Morris <rgm <at> gnu.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 10738 in the body.
You can then email your comments to 10738 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#10738; Package emacs. (Mon, 06 Feb 2012 18:04:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Christopher Monsanto <chris <at> monsan.to>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Mon, 06 Feb 2012 18:04:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Christopher Monsanto <chris <at> monsan.to>
To: bug-gnu-emacs <at> gnu.org
Subject: insert before setting the mark means the mark wont be set
Date: Mon, 6 Feb 2012 12:57:36 -0500
From emacs -q, consider the following program:

(defun foo ()
  (interactive)
  (insert "bar")
  (push-mark)
  (forward-line)
  (activate-mark))

M-x foo, bar appears, but the mark is not set.

(defun baz ()
   (interactive)
   (push-mark)
   (forward-line)
   (activate-mark))

I wouldn't expect a command *before* setting the mark to affect if the
mark was actually set. Is this a concurrency bug?



In GNU Emacs 24.0.93.1 (x86_64-unknown-linux-gnu, GTK+ Version 2.24.6)
 of 2012-02-04 on WORKCOMPUTER
Windowing system distributor `The X.Org Foundation', version 11.0.11004000
Important settings:
  value of $LC_ALL: nil
  value of $LC_COLLATE: nil
  value of $LC_CTYPE: nil
  value of $LC_MESSAGES: nil
  value of $LC_MONETARY: nil
  value of $LC_NUMERIC: nil
  value of $LC_TIME: nil
  value of $LANG: en_US.UTF-8
  value of $XMODIFIERS: nil
  locale-coding-system: utf-8-unix
  default enable-multibyte-characters: t

Major mode: Fundamental

Minor modes in effect:
  tooltip-mode: t
  mouse-wheel-mode: t
  tool-bar-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  blink-cursor-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  line-number-mode: t
  transient-mark-mode: t

Recent input:
<help-echo> <down-mouse-1> <mouse-1> M-x r e p o r
t - e m a c s - b u g <return>

Recent messages:
For information about GNU Emacs and the GNU system, type C-h C-a.

Load-path shadows:
None found.

Features:
(shadow sort gnus-util mail-extr message format-spec rfc822 mml easymenu
mml-sec mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045
ietf-drums mm-util mail-prsvr mailabbrev mail-utils gmm-utils mailheader
emacsbug time-date tooltip ediff-hook vc-hooks lisp-float-type mwheel
x-win x-dnd tool-bar dnd fontset image fringe lisp-mode register page
menu-bar rfn-eshadow timer select scroll-bar mouse jit-lock font-lock
syntax facemenu font-core frame cham georgian utf-8-lang misc-lang
vietnamese tibetan thai tai-viet lao korean japanese hebrew greek
romanian slovak czech european ethiopic indian cyrillic chinese
case-table epa-hook jka-cmpr-hook help simple abbrev minibuffer loaddefs
button faces cus-face files text-properties overlay sha1 md5 base64
format env code-pages mule custom widget hashtable-print-readable
backquote make-network-process dynamic-setting system-font-setting
font-render-setting move-toolbar gtk x-toolkit x multi-tty emacs)

Christopher Monsanto
chris <at> monsan.to  --  http://monsan.to/




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#10738; Package emacs. (Mon, 06 Feb 2012 21:26:01 GMT) Full text and rfc822 format available.

Message #8 received at 10738 <at> debbugs.gnu.org (full text, mbox):

From: Stefan Monnier <monnier <at> IRO.UMontreal.CA>
To: Christopher Monsanto <chris <at> monsan.to>
Cc: 10738 <at> debbugs.gnu.org
Subject: Re: bug#10738: insert before setting the mark means the mark wont be
	set
Date: Mon, 06 Feb 2012 16:24:37 -0500
>> From emacs -q, consider the following program:
> (defun foo ()
>   (interactive)
>   (insert "bar")
>   (push-mark)
>   (forward-line)
>   (activate-mark))

> M-x foo, bar appears, but the mark is not set.

> (defun baz ()
>    (interactive)
>    (push-mark)
>    (forward-line)
>    (activate-mark))

> I wouldn't expect a command *before* setting the mark to affect if the
> mark was actually set. Is this a concurrency bug?

The mark gets deactivated after a command that modifies the buffer.
`foo' above is a command that modifies the buffer, so the mark is
deactivated afterwards.  This is done via the
`deactivate-mark' variable.
You can let-bind it around the call to `insert' to prevent that variable
from being set.


        Stefan




Added tag(s) notabug. Request was from Glenn Morris <rgm <at> gnu.org> to control <at> debbugs.gnu.org. (Tue, 07 Feb 2012 19:26:01 GMT) Full text and rfc822 format available.

bug closed, send any further explanations to 10738 <at> debbugs.gnu.org and Christopher Monsanto <chris <at> monsan.to> Request was from Glenn Morris <rgm <at> gnu.org> to control <at> debbugs.gnu.org. (Tue, 07 Feb 2012 19:26:01 GMT) Full text and rfc822 format available.

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Wed, 07 Mar 2012 12:24:05 GMT) Full text and rfc822 format available.

This bug report was last modified 13 years and 165 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.