Subject: 23.1.50; mark deactivated without running deactivate-mark-hook when replying with Gnus
From: Tassilo Horn <[email-masked]>
To: [email-masked]
Date: Thu, 10 Dec 2009 16:23:20 +0100

Please write in English if possible, because the Emacs maintainers
usually do not have translators to read other languages for them.

Your bug report will be posted to the [email-masked] mailing list.

Please describe exactly what actions triggered the bug
and the precise symptoms of the bug.  If you can, give
a recipe starting from `emacs -Q':

I use this code, to have a 'bar cursor type when the mark is active.

--8<---------------cut here---------------start------------->8---
(defun th-activate-mark-init ()
  (setq cursor-type 'bar))
(add-hook 'activate-mark-hook 'th-activate-mark-init)

(defun th-deactivate-mark-init ()
  (setq cursor-type 'box))
(add-hook 'deactivate-mark-hook 'th-deactivate-mark-init)
--8<---------------cut here---------------end--------------->8---

This works very good, except when replying to a mail with Gnus using `R'
in summary.  `R' first yanks the quoted contents of the email I want to
reply to into the message buffer.  After that, I have a 'bar cursor but
no active region.

So it seems that it's somehow possible to deactivate the mark without
running deactivate-mark-hook, and I think that shouldn't be so.

If Emacs crashed, and you have the Emacs process in the gdb debugger,
please include the output from the following gdb commands:
    `bt full' and `xbacktrace'.
For information about debugging Emacs, please read the file
/usr/share/emacs/23.1.50/etc/DEBUG.

In GNU Emacs 23.1.50.1 (x86_64-pc-linux-gnu, GTK+ Version 2.18.3)
 of 2009-12-08 on localhost
Windowing system distributor `The X.Org Foundation', version 11.0.10703000
configured using `configure  '--prefix=/usr' '--host=x86_64-pc-linux-gnu' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--datadir=/usr/share' '--sysconfdir=/etc' '--localstatedir=/var/lib' '--libdir=/usr/lib64' '--build=x86_64-pc-linux-gnu' '--program-suffix=-emacs-23-cvs' '--infodir=/usr/share/info/emacs-23-cvs' '--with-sound' '--with-x' '--without-gconf' '--without-toolkit-scroll-bars' '--with-gif' '--with-jpeg' '--with-png' '--with-rsvg' '--with-tiff' '--with-xpm' '--with-xft' '--with-libotf' '--with-m17n-flt' '--with-x-toolkit=gtk' '--without-hesiod' '--without-kerberos' '--without-kerberos5' '--with-gpm' '--with-dbus' 'build_alias=x86_64-pc-linux-gnu' 'host_alias=x86_64-pc-linux-gnu' 'CFLAGS=-march=core2 -O2 -pipe' 'LDFLAGS=-Wl,-z,now''

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: Emacs-Lisp

Minor modes in effect:
  shell-dirtrack-mode: t
  rcirc-track-minor-mode: t
  paredit-mode: t
  eldoc-mode: t
  highlight-symbol-mode: t
  hi-lock-mode: t
  outline-minor-mode: t
  highlight-parentheses-mode: t
  recentf-mode: t
  window-number-meta-mode: t
  window-number-mode: t
  exec-abbrev-cmd-mode: t
  global-subword-mode: t
  subword-mode: t
  global-hl-line-mode: t
  savehist-mode: t
  show-paren-mode: t
  tooltip-mode: t
  mouse-wheel-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  global-auto-composition-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  column-number-mode: t
  line-number-mode: t
  transient-mark-mode: t

Recent input:
R c n n n n n n n n n n n n n n n n n n n n n n n n 
n n n n n n n n n n n n n n n C-x k <return> q M-x 
C-g <up> <down> <return> <return> R n n n n n n n n 
n n n n n n n n n n n n n n n n n n n n n n n n n n 
n n n n n n n n n n n n n n c C-x k <return> q C-x 
b <right> <right> <return> <down> C-x C-e C-x b e m 
<right> <return> <up> <right> <right> <right> <right> 
<right> <return> <tab> C-h f d e <tab> b <tab> <tab> 
<return> <tab> ( d e b u i <backspace> g <down> <end> 
C-x C-e C-x b s <return> C-x C-e C-x k <return> C-x 
b <return> <return> r C-x k <return> <return> R <up> 
<up> <up> <up> <up> <up> <return> <right> <right> <right> 
<return> <down> <down> <down> <down> <down> <down> 
<down> <down> <down> <down> <down> <down> <down> <down> 
<down> <down> <up> <up> <down> <down> <down> <down> 
<down> <down> <down> <down> <down> <down> <up> <down> 
<left> <left> <left> <left> <left> C-h f <return> <tab> 
<return> <help-echo> <down-mouse-1> <mouse-1> <down-mouse-1> 
<mouse-1> q <help-echo> C-x C-x q C-x b <right> <right> 
<return> <up> <backspace> <backspace> <backspace> <backspace> 
<backspace> <backspace> <backspace> <backspace> <backspace> 
<backspace> <down> C-x C-e C-x C-s C-x C-x C-x C-x 
C-g C-g M-1 M-2 q M-x r e b <return> C-g C-x b <return> 
<up> <left> <left> <left> <left> <left> <left> <left> 
<left> <left> <left> <left> <left> <left> <left> <left> 
<left> <left> <left> <left> <left> <left> <left> <left> 
<left> <left> <left> M-x r e b <return>

Recent messages:
Back to top level.
th-activate-mark-init
Saving file /home/horn/repos/configs/dot-emacs.el...
Wrote /home/horn/repos/configs/dot-emacs.el
Quit [3 times]
Auto-saving...
20091210T155806.201> Exiting summary buffer and applying spam rules
20091210T155806.209> nnimap: Setting marks in ml/re-group...
20091210T155806.211> nnimap: Setting marks in ml/re-group...done
20091210T155806.218> No more unread newsgroups
Quit

Load-path shadows:
~/repos/el/org-mode/lisp/org-bbdb hides /usr/share/emacs/23.1.50/lisp/org/org-bbdb
~/repos/el/org-mode/lisp/org-habit hides /usr/share/emacs/23.1.50/lisp/org/org-habit
~/repos/el/org-mode/lisp/org-colview hides /usr/share/emacs/23.1.50/lisp/org/org-colview
~/repos/el/org-mode/lisp/org-footnote hides /usr/share/emacs/23.1.50/lisp/org/org-footnote
~/repos/el/org-mode/lisp/org-freemind hides /usr/share/emacs/23.1.50/lisp/org/org-freemind
~/repos/el/org-mode/lisp/org-compat hides /usr/share/emacs/23.1.50/lisp/org/org-compat
~/repos/el/org-mode/lisp/org-icalendar hides /usr/share/emacs/23.1.50/lisp/org/org-icalendar
~/repos/el/org-mode/lisp/org-clock hides /usr/share/emacs/23.1.50/lisp/org/org-clock
~/repos/el/org-mode/lisp/org-bibtex hides /usr/share/emacs/23.1.50/lisp/org/org-bibtex
~/repos/el/org-mode/lisp/org-indent hides /usr/share/emacs/23.1.50/lisp/org/org-indent
~/repos/el/org-mode/lisp/org-faces hides /usr/share/emacs/23.1.50/lisp/org/org-faces
~/repos/el/org-mode/lisp/org-timer hides /usr/share/emacs/23.1.50/lisp/org/org-timer
~/repos/el/org-mode/lisp/org-vm hides /usr/share/emacs/23.1.50/lisp/org/org-vm
~/repos/el/org-mode/lisp/org-list hides /usr/share/emacs/23.1.50/lisp/org/org-list
~/repos/el/org-mode/lisp/org-gnus hides /usr/share/emacs/23.1.50/lisp/org/org-gnus
~/repos/el/org-mode/lisp/org-crypt hides /usr/share/emacs/23.1.50/lisp/org/org-crypt
~/repos/el/org-mode/lisp/org-exp hides /usr/share/emacs/23.1.50/lisp/org/org-exp
~/repos/el/org-mode/lisp/org-protocol hides /usr/share/emacs/23.1.50/lisp/org/org-protocol
~/repos/el/org-mode/lisp/org-inlinetask hides /usr/share/emacs/23.1.50/lisp/org/org-inlinetask
~/repos/el/org-mode/lisp/org-wl hides /usr/share/emacs/23.1.50/lisp/org/org-wl
~/repos/el/org-mode/lisp/org-plot hides /usr/share/emacs/23.1.50/lisp/org/org-plot
~/repos/el/org-mode/lisp/org-w3m hides /usr/share/emacs/23.1.50/lisp/org/org-w3m
~/repos/el/org-mode/lisp/org-agenda hides /usr/share/emacs/23.1.50/lisp/org/org-agenda
~/repos/el/org-mode/lisp/org-archive hides /usr/share/emacs/23.1.50/lisp/org/org-archive
~/repos/el/org-mode/lisp/org-attach hides /usr/share/emacs/23.1.50/lisp/org/org-attach
~/repos/el/org-mode/lisp/org-latex hides /usr/share/emacs/23.1.50/lisp/org/org-latex
~/repos/el/org-mode/lisp/org-mhe hides /usr/share/emacs/23.1.50/lisp/org/org-mhe
~/repos/el/org-mode/lisp/org-irc hides /usr/share/emacs/23.1.50/lisp/org/org-irc
~/repos/el/org-mode/lisp/org-table hides /usr/share/emacs/23.1.50/lisp/org/org-table
~/repos/el/org-mode/lisp/org-info hides /usr/share/emacs/23.1.50/lisp/org/org-info
~/repos/el/org-mode/lisp/org-docbook hides /usr/share/emacs/23.1.50/lisp/org/org-docbook
~/repos/el/org-mode/lisp/org-ascii hides /usr/share/emacs/23.1.50/lisp/org/org-ascii
~/repos/el/org-mode/lisp/org-jsinfo hides /usr/share/emacs/23.1.50/lisp/org/org-jsinfo
~/repos/el/org-mode/lisp/org-id hides /usr/share/emacs/23.1.50/lisp/org/org-id
~/repos/el/org-mode/lisp/org-feed hides /usr/share/emacs/23.1.50/lisp/org/org-feed
~/repos/el/org-mode/lisp/org-xoxo hides /usr/share/emacs/23.1.50/lisp/org/org-xoxo
~/repos/el/org-mode/lisp/org-publish hides /usr/share/emacs/23.1.50/lisp/org/org-publish
~/repos/el/org-mode/lisp/org-exp-blocks hides /usr/share/emacs/23.1.50/lisp/org/org-exp-blocks
~/repos/el/org-mode/lisp/org-mew hides /usr/share/emacs/23.1.50/lisp/org/org-mew
~/repos/el/org-mode/lisp/org-mobile hides /usr/share/emacs/23.1.50/lisp/org/org-mobile
~/repos/el/org-mode/lisp/org-datetree hides /usr/share/emacs/23.1.50/lisp/org/org-datetree
~/repos/el/org-mode/lisp/org-remember hides /usr/share/emacs/23.1.50/lisp/org/org-remember
~/repos/el/org-mode/lisp/org-macs hides /usr/share/emacs/23.1.50/lisp/org/org-macs
~/repos/el/org-mode/lisp/org-mouse hides /usr/share/emacs/23.1.50/lisp/org/org-mouse
~/repos/el/org-mode/lisp/org-html hides /usr/share/emacs/23.1.50/lisp/org/org-html
~/repos/el/org-mode/lisp/org-install hides /usr/share/emacs/23.1.50/lisp/org/org-install
~/repos/el/org-mode/lisp/org-src hides /usr/share/emacs/23.1.50/lisp/org/org-src
~/repos/el/org-mode/lisp/org hides /usr/share/emacs/23.1.50/lisp/org/org
~/repos/el/org-mode/lisp/org-rmail hides /usr/share/emacs/23.1.50/lisp/org/org-rmail
~/repos/el/org-mode/lisp/org-mac-message hides /usr/share/emacs/23.1.50/lisp/org/org-mac-message

Features:
(shadow emacsbug w3m-form w3m-symbol re-builder grep bbdb-gui flow-fill
gnus-cite ansi-color gnus-bcklg gnus-dup gnus-async sort gnus-ml
skeleton solar cal-dst holidays hol-loaddefs cal-iso tramp-imap epa epg
imap-hash tramp-gw tramp-fish tramp-smb tramp-cache tramp-ftp tramp-cmds
tramp shell tramp-compat trampver sh-script executable mule-util
cal-move ibuf-ext ibuffer cl-specs edebug debug hippie-exp multi-isearch
vc-dispatcher vc-svn find-func help-mode view gnus-topic parse-time pop3
nnml utf-7 utf7 auth-source nnimap imap trace nndraft nnmh nnnil
gnus-agent gnus-srvr gnus-score score-mode nnvirtual nntp gnus-cache
notmuch bbdb-hooks bbdb-gnus bbdb-snarf mail-extr spam spam-stat
bbdb-com gnus-uu yenc gnus-msg smiley gnus-art mm-uu mml2015 epg-config
mm-view smime dig gnus-sum nnoo gnus-group gnus-undo nnmail mail-source
format-spec gnus-start gnus-spec gnus-int gnus-range gnus-win garak elim
warnings lui tracking flyspell ispell incomplete rcirc-late-fix rcirc
greqlscript-mode greql-mode tg-mode generic th-latex
swank-clojure-autoload clojure-mode swank-clojure paredit slime-fancy
slime-fontifying-fu slime-package-fu slime-mdot-fu slime-references
slime-xref-browser slime-scratch slime-presentations
slime-highlight-edits slime-fuzzy slime-fancy-inspector slime-c-p-c
slime-editing-commands slime-autodoc slime-enclosing-context slime-parse
slime-repl slime apropos hideshow hyperspec wtf cus-edit cus-start
cus-load rdictcc appt diary-lib diary-loaddefs vc-git org-attach
org-protocol org-irc org-info org-gnus org-bbdb org-id org-agenda
remember org-remember org-datetree org org-footnote org-src org-list
org-faces org-compat org-macs org-install cal-menu calendar cal-loaddefs
dired-x dired-aux pcomplete em-term term ehelp electric esh-var esh-io
esh-cmd esh-ext esh-proc esh-arg eldoc esh-groups eshell esh-util
esh-module esh-mode lisppaste xml-rpc xml th-boxquote boxquote rect
highlight-symbol hi-lock footnote smtpmail message idna sendmail
ecomplete rfc822 mml mml-sec password-cache mm-decode mm-bodies
mm-encode mailabbrev gmm-utils mailheader canlock sha1 hex-util hashcash
info server yasnippet dropdown-list noutline outline
highlight-parentheses browse-kill-ring derived filesets recentf
tree-widget sr-speedbar speedbar sb-image ezimage dframe ido
anything-config compile comint ring semantic/util-modes semantic/util
semantic semantic/tag semantic/lex semantic/fw eieio byte-opt bytecomp
byte-compile mode-local cedet imenu w3m-bookmark w3m browse-url doc-view
jka-compr image-mode w3m-hist w3m-fb w3m-ems w3m-ccl ccl w3m-favicon
w3m-image w3m-proc w3m-util bookmark pp ffap dired rx thingatpt anything
woman easymenu man assoc window-number uniquify exec-abbrev-cmd
easy-mmode cl cl-19 subword hl-line saveplace savehist paren th-private
edmacro kmacro advice help-fns advice-preload th-common mm-url gnus
gnus-ems nnheader gnus-util netrc mail-utils wid-edit url-http tls url
url-proxy url-privacy url-expand url-methods url-history mailcap
url-auth mail-parse rfc2231 rfc2047 rfc2045 qp ietf-drums time-date
url-cookie url-util url-parse url-gw url-vars mm-util mail-prsvr
windmove disp-table site-gentoo w3m-load bbdb-autoloads bbdb regexp-opt
timezone tex-site auto-loads tooltip ediff-hook vc-hooks lisp-float-type
mwheel x-win x-dnd font-setting tool-bar dnd fontset image fringe
lisp-mode register page menu-bar rfn-eshadow timer select scroll-bar
mldrag 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 loaddefs button minibuffer faces cus-face text-properties overlay
md5 base64 format env code-pages mule custom widget
hashtable-print-readable backquote make-network-process dbusbind
font-render-setting gtk x-toolkit x multi-tty emacs)