Subject: 24.2; `quit-window' wrongly iconifies frame
From: Romain Francoise <[email-masked]>
To: [email-masked]
Date: Mon, 29 Oct 2012 19:12:00 +0100
List-Id: <debbugs-submit.debbugs.gnu.org>

There's a regression in Emacs 24 compared to Emacs 23 wrt the behavior
of `quit-window'. In some circumstances, it iconifies frames that were
existing before the current buffer was created, which (AIUI) it's not
supposed to do.

Recipe starting from `emacs -Q':
- C-x 5 2 to create a new frame
- in the new frame, M-x man RET emacs RET
- C-x 0 to make the man buffer the current buffer
- q

When you hit `q' the frame gets iconified, even though it was not
created by M-x man.

Git bisect finds the following commit as the culprit:

| eb54d3ecc6903155955fc07d7f3baaed912c8378 is the first bad commit
| commit eb54d3ecc6903155955fc07d7f3baaed912c8378
| Author: martin rudalics <[email-masked]>
| Date:   Tue Oct 4 17:28:25 2011 +0200
| 
|     Make frame iconification/deletion optional when burying buffers.
| 
|     * window.el (window--delete): New function.
|     (frame-auto-delete): Resuscitate option.
|     (bury-buffer, replace-buffer-in-windows)
|     (quit-window): Rewrite using window--delete.
|     (display-buffer-pop-up-frame, display-buffer-pop-up-window):
|     Pass display-buffer-mark-dedicated to window--display-buffer-2
|     (Bug#9639).

Adding martin to Cc list.
Thanks,

In GNU Emacs 24.2.1 (x86_64-unknown-linux-gnu, X toolkit, Xaw3d scroll bars)
 of 2012-10-29 on silenus
Windowing system distributor `The X.Org Foundation', version 11.0.11204000
Configured using:
 `configure '--with-x-toolkit=lucid' '--without-dbus' '--without-gconf'
 '--without-gsettings' '--without-selinux' '--without-sound'
 '--without-m17n-flt' '--without-gpm' 'CFLAGS=-g -O2 -fstack-protector
 --param=ssp-buffer-size=4 -Wformat -Werror=format-security'
 'LDFLAGS=-Wl,-z,relro -Wl,-z,now' 'CPPFLAGS=-D_FORTIFY_SOURCE=2''

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

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
  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:
M-x r e p o r SPC e m <tab> <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 emacsbug message format-spec rfc822 mml
easymenu mml-sec mm-decode mm-bodies mm-encode mail-parse rfc2231
mailabbrev gmm-utils mailheader sendmail regexp-opt rfc2047 rfc2045
ietf-drums mm-util mail-prsvr mail-utils 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
font-render-setting x-toolkit x multi-tty emacs)