Subject: bug#8857: display-buffer attempt to pop-up frame in batch mode causes "Unknown terminal type" error

From: martin rudalics <[email-masked]>
Date: Wed, 15 Jun 2011 21:32:59 +0200

> I don't know if this is what you're looking for, but when I run this:

More or less so, thanks.  Putting the debug-on-entry on
`display-buffer-pop-up-frame' would have been more indicative.

 > --> emacs --batch -Q --eval "(debug-on-entry 'display-buffer-pop-up-window)" foo bar baz
 >
 > I get this:
 >
 > Debugger entered--entering a function:
 >   display-buffer-pop-up-window(#<buffer bar> ((largest) (lru)) ((pop-up-frame) (reuse-window ...
                                                                   ^^^^^^^^^^^^^^

`display-buffer-pop-up-window' likely fails here to produce a window and
next `display-buffer' tries to pop up a new frame.

 > * display-buffer(#<buffer bar> other-window nil)
 >   pop-to-buffer(#<buffer bar> other-window nil)
 >   switch-to-buffer-other-window(#<buffer bar>)
 >   find-file-other-window("/home/void/bar")
 >   command-line-1(("--eval" "(debug-on-entry 'display-buffer-pop-up-window)" "foo" "bar" "baz"))
 >   command-line()
 >   normal-top-level()

The problem is that `switch-to-buffer-other-window' has to use "another"
window.  If it can't pop up a window on the selected frame it tries to
pop up a new frame :-( As Glenn remarked - you can get the same problem
by setting `pop-up-frames' to t.  What shall I do?

martin