Subject: bug#11192: 24.0.95; rcirc /quit command always quits all servers

From: Ken Manheimer <[email-masked]>
Date: Sat, 7 Apr 2012 13:33:05 -0400

This bug report will be sent to the Bug-GNU-Emacs mailing list
and the GNU bug tracker at debbugs.gnu.org.  Please check that
the From: line contains a valid email address.  After a delay of up
to one day, you should receive an acknowledgement at that address.

Please write in English if possible, as the Emacs maintainers
usually do not have translators for other languages.

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':

Using the rcirc /quit command in a server or channel buffer causes rcirc
to quit all servers, not just the current one. This also happens if you
do `Esc-x rcirc-cmd-quit', with or without a universal argument.

The problem seems to be from a recent (2012-03-18) change to rcirc.el by
Leo Liu, to "Allow quiting all servers". Unfortunately, it prevents
quitting only the current server.

I'm not sure how to conveniently provide for both quitting all servers
and quitting the current server, but I am sure that the latter is almost
always what I want, and I expect the most common use case. Either
the recent change should be reverted or the revision should be repaired
to provide the old behavior, by default, as well as the new.

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
/Applications/Emacs24.app/Contents/Resources/etc/DEBUG.

In GNU Emacs 24.0.95.1 (x86_64-apple-darwin, NS apple-appkit-1038.36)
 of 2012-04-02 on bob.porkrind.org
Windowing system distributor `Apple', version 10.3.1138
Configured using:
 `configure '--host=x86_64-apple-darwin' '--build=i686-apple-darwin'
 '--with-ns' 'build_alias=i686-apple-darwin'
 'host_alias=x86_64-apple-darwin' 'CC=gcc -mmacosx-version-min=10.5''

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: nil
  value of $XMODIFIERS: nil
  locale-coding-system: nil
  default enable-multibyte-characters: t

Major mode: Emacs-Lisp

Minor modes in effect:
  diff-auto-refine-mode: t
  show-paren-mode: t
  rcirc-track-minor-mode: t
  desktop-save-mode: t
  shell-dirtrack-mode: t
  icomplete-mode: t
  tooltip-mode: t
  mouse-wheel-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  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:
C-n C-n C-n C-f C-f C-SPC M-f M-f M-f M-w C-x o C-y
SPC r c i r c SPC q u i t - c o m m a n d SPC c h a
n g e SPC t h a t SPC c a u s e s SPC / q u i t SPC
t o SPC q u i t SPC a l l SPC b u f f e r s <M-backspace>
s e r v e r s M-q . C-a C-n C-x C-s C-x 4 b e m <tab>
<return> C-p M-k C-y C-p C-e M-b M-d q u i t C-a C-x
C-s C-e M-b m y - C-e C-x C-e q M-. M-o M-. ( p r o
v i d e SPC ' r c i r c - m y - q u i t C-d C-d C-a
C-x C-s C-x o C-p C-p C-p C-p C-p C-p C-e C-x C-e C-a
C-x o C-o C-x C-s M-x e m a c s - b u C-g M-x r e p
o r t <return> r c i r c SPC / q u i t SPC c o m m
a n d SPC a l w a y s SPC q u i t s SPC a l l SPC s
e r v e r s <return> U s i n g SPC / q u i t C-a C-k
C-u C-p C-u C-p C-u C-n C-n <return> C-p C-p C-p C-p
C-n C-n C-n C-n C-n C-p C-p C-p C-n C-f M-, C-n C-n
<down-mouse-1> <mouse-1> <down-mouse-1> <mouse-1> C-f
C-SPC C-e M-w C-x k <return> y e s <return> M-x e m
a <backspace> <backspace> <backspace> r e p o r t <tab>
<return>

Recent messages:
Checking 68 files in
/Applications/Emacs24.app/Contents/Resources/lisp/erc...
Checking 48 files in
/Applications/Emacs24.app/Contents/Resources/lisp/emulation...
Checking 148 files in
/Applications/Emacs24.app/Contents/Resources/lisp/emacs-lisp...
Checking 24 files in
/Applications/Emacs24.app/Contents/Resources/lisp/cedet...
Checking 57 files in
/Applications/Emacs24.app/Contents/Resources/lisp/calendar...
Checking 87 files in
/Applications/Emacs24.app/Contents/Resources/lisp/calc...
Checking 65 files in
/Applications/Emacs24.app/Contents/Resources/lisp/obsolete...
Checking 1 files in /Applications/Emacs24.app/Contents/Resources/leim...
Checking for load-path shadows...done
Mark set

Load-path shadows:
/Users/klm/lib/emacs/misc hides
/Applications/Emacs24.app/Contents/Resources/lisp/misc
/Users/klm/lib/emacs/allout_dev/allout hides
/Applications/Emacs24.app/Contents/Resources/lisp/allout
/Users/klm/lib/emacs/allout_dev/allout-widgets hides
/Applications/Emacs24.app/Contents/Resources/lisp/allout-widgets
/Users/klm/lib/emacs/align hides
/Applications/Emacs24.app/Contents/Resources/lisp/align
/Users/klm/lib/emacs/rst hides
/Applications/Emacs24.app/Contents/Resources/lisp/textmodes/rst
/Users/klm/lib/emacs/css-mode hides
/Applications/Emacs24.app/Contents/Resources/lisp/textmodes/css-mode
/Users/klm/lib/emacs/nxml/xsd-regexp hides
/Applications/Emacs24.app/Contents/Resources/lisp/nxml/xsd-regexp
/Users/klm/lib/emacs/nxml/xmltok hides
/Applications/Emacs24.app/Contents/Resources/lisp/nxml/xmltok
/Users/klm/lib/emacs/nxml/rng-xsd hides
/Applications/Emacs24.app/Contents/Resources/lisp/nxml/rng-xsd
/Users/klm/lib/emacs/nxml/rng-valid hides
/Applications/Emacs24.app/Contents/Resources/lisp/nxml/rng-valid
/Users/klm/lib/emacs/nxml/rng-util hides
/Applications/Emacs24.app/Contents/Resources/lisp/nxml/rng-util
/Users/klm/lib/emacs/nxml/rng-uri hides
/Applications/Emacs24.app/Contents/Resources/lisp/nxml/rng-uri
/Users/klm/lib/emacs/nxml/rng-pttrn hides
/Applications/Emacs24.app/Contents/Resources/lisp/nxml/rng-pttrn
/Users/klm/lib/emacs/nxml/rng-parse hides
/Applications/Emacs24.app/Contents/Resources/lisp/nxml/rng-parse
/Users/klm/lib/emacs/nxml/rng-nxml hides
/Applications/Emacs24.app/Contents/Resources/lisp/nxml/rng-nxml
/Users/klm/lib/emacs/nxml/rng-match hides
/Applications/Emacs24.app/Contents/Resources/lisp/nxml/rng-match
/Users/klm/lib/emacs/nxml/rng-maint hides
/Applications/Emacs24.app/Contents/Resources/lisp/nxml/rng-maint
/Users/klm/lib/emacs/nxml/rng-loc hides
/Applications/Emacs24.app/Contents/Resources/lisp/nxml/rng-loc
/Users/klm/lib/emacs/nxml/rng-dt hides
/Applications/Emacs24.app/Contents/Resources/lisp/nxml/rng-dt
/Users/klm/lib/emacs/nxml/rng-cmpct hides
/Applications/Emacs24.app/Contents/Resources/lisp/nxml/rng-cmpct
/Users/klm/lib/emacs/nxml/nxml-util hides
/Applications/Emacs24.app/Contents/Resources/lisp/nxml/nxml-util
/Users/klm/lib/emacs/nxml/nxml-uchnm hides
/Applications/Emacs24.app/Contents/Resources/lisp/nxml/nxml-uchnm
/Users/klm/lib/emacs/nxml/nxml-parse hides
/Applications/Emacs24.app/Contents/Resources/lisp/nxml/nxml-parse
/Users/klm/lib/emacs/nxml/nxml-ns hides
/Applications/Emacs24.app/Contents/Resources/lisp/nxml/nxml-ns
/Users/klm/lib/emacs/nxml/nxml-mode hides
/Applications/Emacs24.app/Contents/Resources/lisp/nxml/nxml-mode
/Users/klm/lib/emacs/nxml/nxml-maint hides
/Applications/Emacs24.app/Contents/Resources/lisp/nxml/nxml-maint
/Users/klm/lib/emacs/nxml/nxml-glyph hides
/Applications/Emacs24.app/Contents/Resources/lisp/nxml/nxml-glyph
/Users/klm/lib/emacs/nxml/nxml-enc hides
/Applications/Emacs24.app/Contents/Resources/lisp/nxml/nxml-enc

Features:
(shadow sort mail-extr gnus-msg gnus-art mm-uu mml2015 mm-view mml-smime
smime dig mailcap gnus-sum nnoo gnus-group gnus-undo nnmail mail-source
gnus-start gnus-spec gnus-int gnus-range gnus-win emacsbug message
rfc822 mml mml-sec mm-decode mm-bodies mm-encode mail-parse rfc2231
mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums
rcirc-my-quit log-view pcmpl-unix newcomment vc-rcs cl-specs edebug
dabbrev debug apropos diff-mode log-edit pcvs-util easy-mmode compare-w
epa multi-isearch time-stamp pp cus-edit help-mode view disp-table
network-stream starttls tls ind-util dcl-mode tempo sgml-mode outdent
python-21 python vc-bzr add-log info easymenu parse-time vc-cvs
jka-compr saveplace paren rcirc-notify rcirc-groups derived edmacro
kmacro rcirc avoid iswitchb grep compile gnus gnus-ems nnheader
mail-utils hl-line desktop allout-widgets wid-edit allout cus-start
cus-load delsel mouse-drag flyspell ispell server dired uniquify
warnings poptoshell user-info ange-ftp tramp-ftp tramp-sh tramp
tramp-compat auth-source eieio byte-opt bytecomp byte-compile cconv
macroexp assoc gnus-util mm-util mail-prsvr password-cache shell
pcomplete comint ansi-color ring format-spec advice help-fns
advice-preload tramp-loaddefs regexp-opt file-registry namedmarks vc
ediff-merg ediff-diff ediff-wind ediff-help ediff-util ediff-mult
ediff-init ediff vc-dispatcher misc redo icomplete nxml-mode nxml-util
nxml-glyph nxml-enc xmltok find-func retain-copy cl epg epg-config
time-date tooltip ediff-hook vc-hooks lisp-float-type mwheel ns-win
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 ns multi-tty emacs)