Subject: 23.0.60; x-create-frame gives wrong-type-argument error

From: "Drew Adams" <[email-masked]>
Date: Thu, 7 Aug 2008 15:27:42 -0700

Can't really give a precise recipe for this. I have a special-display
function that when called can lead to this:
 
Debugger entered--Lisp error: (wrong-type-argument number-or-marker-p nil)
  >(nil 0)
  x-create-frame(((visibility) (width . 100) (width . 80) (height . 14)
(menu-bar-lines . 1) (top . 0) (left . 0) (unsplittable . t) (user-position . t)
(vertical-scroll-bars . right) (height . 14) (width . 80) (unsplittable . t)))
  x-create-frame-with-faces(((background-color . "LavenderBlush2") (mouse-color
. "VioletRed") (cursor-color . "VioletRed") (width . 100) (font . "-*-Lucida
Console-normal-r-*-*-14-112-96-96-c-*-iso8859-1") (width . 80) (height . 14)
(mouse-color . "Yellow") (cursor-color . "Yellow") (menu-bar-lines . 1)
(foreground-color . "Black") (background-color . "LightSteelBlue") (top . 0)
(left . 0) (unsplittable . t) (user-position . t) (vertical-scroll-bars . right)
(height . 14) (width . 80) (unsplittable . t)))
  make-frame(((background-color . "LavenderBlush2") (mouse-color . "VioletRed")
(cursor-color . "VioletRed") (width . 100) (font . "-*-Lucida
Console-normal-r-*-*-14-112-96-96-c-*-iso8859-1") (width . 80) (height . 14)
(mouse-color . "Yellow") (cursor-color . "Yellow") (menu-bar-lines . 1)
(foreground-color . "Black") (background-color . "LightSteelBlue") (top . 0)
(left . 0) (unsplittable . t) (user-position . t) (vertical-scroll-bars . right)
(height . 14) (width . 80) (unsplittable . t)))
  special-display-popup-frame(#<buffer *Completions*> ((background-color .
"LavenderBlush2") (mouse-color . "VioletRed") (cursor-color . "VioletRed")
(width . 100)))
  1on1-display-*Completions*-frame(#<buffer *Completions*> ((background-color .
"LavenderBlush2") (mouse-color . "VioletRed") (cursor-color . "VioletRed")
(width . 100)))
  apply(1on1-display-*Completions*-frame #<buffer *Completions*>
((background-color . "LavenderBlush2") (mouse-color . "VioletRed") (cursor-color
. "VioletRed") (width . 100)))
  special-display-popup-frame(#<buffer *Completions*>
(1on1-display-*Completions*-frame ((background-color . "LavenderBlush2")
(mouse-color . "VioletRed") (cursor-color . "VioletRed") (width . 100))))
...
 
I can't trace `x-create-frame', so I don't know what `>' test it is
doing here, but perhaps someone else can figure it out. Presumably,
what is happening is that `x-create-frame-with-faces' adds a null
`visibility' frame parameter, and then something in `x-create-frame'
tries to compare that nil value with 0 using `>'.
 
HTH.

In GNU Emacs 23.0.60.1 (i386-mingw-nt5.1.2600)
 of 2008-08-01 on LENNART-69DE564
Windowing system distributor `Microsoft Corp.', version 5.1.2600
configured using `configure --with-gcc (3.4) --no-opt --cflags -Ic:/g/include
-fno-crossjumping'
 
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: ENU
  value of $XMODIFIERS: nil
  locale-coding-system: cp1252
  default-enable-multibyte-characters: t
 
Major mode: Dired by name
 
Minor modes in effect:
  tooltip-mode: t
  tool-bar-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
  line-number-mode: t
  transient-mark-mode: t
 
Recent input:
<help-echo> <help-echo> <help-echo> <help-echo> <help-echo> 
<help-echo> <menu-bar> <help-menu> <send-emacs-bug
-report>
 
Recent messages:
For information about GNU Emacs and the GNU system, type C-h C-a.