Subject: bug#10955: 24.0.94; Closing Speedbar frame raises error

From: Stephen Berman <[email-masked]>
Date: Tue, 06 Mar 2012 12:00:51 +0100

0. emacs -Q
1. Check "Enter Debugger on Error" in the Options menu.
2. M-x speedbar
3. With the Speedbar frame selected, type `q'.
=>The Speedbar frame vanishes, and in the remaining frame, the following
backtrace appears:

Debugger entered--Lisp error: (error "Attempt to delete the sole visible or iconified frame")
  delete-frame(#<frame Speedbar 1.0 0x89f3f80>)
  window--delete(#<window 8 on  SPEEDBAR> t t)
  replace-buffer-in-windows(#<buffer  SPEEDBAR>)
  kill-buffer(#<buffer  SPEEDBAR>)
  dframe-close-frame()
  call-interactively(dframe-close-frame nil nil)

No error is raised if steps 0-2 are repeated and at step 3 `Q'
(delete-frame) is typed.

Note that the frame consists of a single window containing the
*Backtrace* buffer (normally, a backtrace splits the window).  Moreover,
typing `q' (top-level) in this buffer deletes the backtrace, but an
empty *Backtrace* buffer remains as the current buffer (normally, `q'
kills the *Backtrace* buffer.)

In GNU Emacs 24.0.94.4 (i686-suse-linux-gnu, GTK+ Version 2.24.7)
 of 2012-03-06 on escher
Windowing system distributor `The X.Org Foundation', version 11.0.11004000
Configured using:
 `configure '--without-toolkit-scroll-bars' 'CFLAGS=-g''

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: @im=local
  locale-coding-system: utf-8-unix
  default enable-multibyte-characters: t