From: "Drew Adams" <drew.adams@oracle.com>
To: <1077@emacsbugs.donarmstrong.com>, <emacs-pretest-bug@gnu.org>
Subject: bug#1077: 23.0.60; x-create-frame: (wrong-type-argument number-or-marker-p nil)
Date: Sat, 4 Oct 2008 09:38:20 -0700 [thread overview]
Message-ID: <009701c9263f$9cce7120$0200a8c0@us.oracle.com> (raw)
In-Reply-To: <003e01c9257c$a385d800$0200a8c0@us.oracle.com>
No, I take back my guess about `visibility'. Just evaluating
(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)))
does not necessarily lead to the bug (error).
Something is happening inside `x-create-frame' -
for some reason, it tries to do (> nil 0).
> From: Drew Adams Sent: Friday, October 03, 2008 10:23 AM
>
> My guess is that the error is coming from a `visibility'
> value of nil. And `visibility' should probably not be nil anyway
> here - the frame should be displayed visibly, presumably. There is
> no `visibility' parameter value given to `x-create-frame-with-faces',
> so it must be coming up with that on its own when it calls
> `x-create-frame'.
>
> 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))))
> old-display-buffer(#<buffer *Completions*> nil nil)
> display-buffer(#<buffer *Completions*> nil nil)
> (with-output-to-temp-buffer "*Completions*" (let* (... ...) (when
> last ...) (display-completion-list ...)))
> (if (and completions (or ... ...)) (with-output-to-temp-buffer
> "*Completions*" (let* ... ... ...)) (let (...) (when ... ...))
> (ding) (minibuffer-message (if completions "Sole completion" "No
> completions")))
> (let* ((string ...) (completions ...)) (message nil) (if (and
> completions ...) (with-output-to-temp-buffer "*Completions*" ...)
> (let ... ...) (ding) (minibuffer-message ...)) nil)
> minibuffer-completion-help()
> (if (case completion-auto-help (lazy ...) (t completion-auto-help))
> (minibuffer-completion-help) (minibuffer-message "Next char not
> unique"))
> (cond ((not exact) (if ... ... ...)) ((eq this-command last-command)
> (if completion-auto-help ...)))
> (if completed nil (cond (... ...) (... ...)))
> (unless completed (cond (... ...) (... ...)))
> (let ((exact ...)) (unless completed (cond ... ...))
> (minibuffer--bitset completed t exact))
> (if (not (or unchanged completed)) (completion--do-completion
> try-completion-function) (let (...) (unless completed ...)
> (minibuffer--bitset completed t exact)))
> (let* ((comp-pos ...) (completion ...) (completed ...) (unchanged
> ...)) (unless unchanged (goto-char end) (insert completion)
> (delete-region beg end)) (goto-char (+ beg comp-pos)) (if (not ...)
> (completion--do-completion try-completion-function) (let
> ... ... ...)))
> (cond ((null comp) (ding) (minibuffer-message "No match")
> (minibuffer--bitset nil nil nil)) ((eq t comp) (minibuffer--bitset
> nil nil t)) (t (let* ... ... ... ...)))
> (let* ((beg ...) (end ...) (string ...) (comp ...)) (cond
> (... ... ... ...) (... ...) (t ...)))
> completion--do-completion()
> (let ((--cl-var-- ...)) (cond (... nil) (... ... ... t)
> (... ... ... t) (t t)))
> (case (completion--do-completion) (0 nil) (1 (goto-char ...)
> (minibuffer-message "Sole completion") t) (3 (goto-char ...)
> (minibuffer-message "Complete, but not unique") t) (t t))
> (if (window-live-p window) (with-current-buffer (window-buffer
> window) (if ... ... ...) nil) (case (completion--do-completion) (0
> nil) (1 ... ... t) (3 ... ... t) (t t)))
> (let ((window minibuffer-scroll-window)) (if (window-live-p window)
> (with-current-buffer ... ... nil) (case ... ... ... ... ...)))
> minibuffer-complete()
> (unwind-protect (minibuffer-complete) (delete-overlay ol))
> (let ((ol ...)) (unwind-protect (minibuffer-complete)
> (delete-overlay ol)))
> crm-complete()
> call-interactively(crm-complete nil nil)
> read-from-minibuffer("Friends: " nil (keymap (remap keymap
> (minibuffer-completion-help . crm-completion-help)
> (minibuffer-complete-word . crm-complete-word) (minibuffer-complete
> . crm-complete) keymap (mouse-yank-secondary) (yank-pop)
> (transpose-sexps) (transpose-words) (transpose-chars)
> (reposition-window) (kill-line) (kill-paragraph)
> (backward-kill-paragraph) (backward-kill-sentence) (kill-sexp)
> (backward-kill-sexp) (kill-word) (backward-kill-word) (delete-char)
> (delete-backward-char) (backward-delete-char-untabify)
> (digit-argument) (negative-argument) (universal-argument)
> (self-insert-command)) keymap (24 keymap (124) (119)) (33554464)
> (33554433) (30) (67108923) (67108899) (67108910) (67108927)
> (67108900) (67108924) (67108960) (67108908) (67108922) (67108901)
> (67108987) (67108989) (67108905) (67108904) (67108926) (67108906)
> (67108907) (67108909) (67108990) (33554444) (12) (insert) (C-insert)
> (C-pause) (M-pause) (67108988) (67108897) (C-return) (23) (S-delete)
> (delete) (C-S-next) (C-S-prior) (C-S-down) (C-S-up) (C-S-return)
> (M-return) (C-M-return) (C-M-f1) (C-f1) (C-M-help) (C-help)
> (C-M-next) ...) nil nil nil nil)
> (let* ((minibuffer-completion-table ...)
> (minibuffer-completion-predicate predicate)
> (minibuffer-completion-confirm ...) (crm-completion-table table)
> (map ...) (input ...)) (and def (string-equal input "") (setq input
> def)) (split-string input crm-separator))
> completing-read-multiple("Friends: " ("Luke " David "Robert"))
> eval((completing-read-multiple "Friends: " (quote ("Luke " David
> "Robert"))))
> pp-eval-expression((completing-read-multiple "Friends: " (quote
> ("Luke " David "Robert"))))
> pp-eval-last-sexp(nil)
> call-interactively(pp-eval-last-sexp nil nil)
>
> This is my value of `special-display-buffer-names':
>
> (("*Completions*" 1on1-display-*Completions*-frame
> ((background-color . "LavenderBlush2")
> (mouse-color . "VioletRed")
> (cursor-color . "VioletRed")
> (width . 100)))
> ("*Help*" 1on1-display-*Help*-frame
> ((background-color . "Thistle")
> (mouse-color . "Blue Violet")
> (cursor-color . "Blue Violet")
> (height . 40))))
>
> And this is `1on1-display-*Completions*-frame':
>
> (defun 1on1-display-*Completions*-frame (buf &optional args)
> "Display *Completions* buffer in its own frame.
> `special-display-function' is used to do the actual displaying.
> Completion input events are redirected to `1on1-minibuffer-frame'.
> BUF and ARGS are the arguments to `special-display-function'."
> (let ((old-ptr-shape x-pointer-shape)
> return-window)
> (when (and 1on1-*Completions*-frame-flag
> (boundp 'x-pointer-box-spiral))
> (setq x-pointer-shape x-pointer-box-spiral))
> (setq return-window
> (select-window
> (funcall special-display-function buf args)))
> (when (fboundp 'zoom-frm-out)
> (condition-case nil
> (progn (zoom-frm-out) (zoom-frm-out))
> (error nil)))
>
> ;; We reposition frame this way, instead of binding
> ;; `special-display-frame-alist' with this value, because
> ;; `after-make-frame-functions' might resize frame.
> (when 1on1-*Completions*-frame-at-right-flag
> (modify-frame-parameters
> (selected-frame)
> `((left . ,(- (x-display-pixel-width)
> (+ (frame-pixel-width) 7))))))
> (raise-frame)
> (when (boundp '1on1-minibuffer-frame)
> (redirect-frame-focus
> (selected-frame)
> 1on1-minibuffer-frame))
> (when (and 1on1-*Completions*-frame-flag
> (boundp 'x-pointer-box-spiral))
> (setq x-pointer-shape old-ptr-shape))
> return-window))
>
>
> In GNU Emacs 23.0.60.1 (i386-mingw-nt5.1.2600)
> of 2008-10-03 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'
>
>
>
>
>
>
>
next prev parent reply other threads:[~2008-10-04 16:38 UTC|newest]
Thread overview: 65+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-10-03 17:22 bug#1077: 23.0.60; x-create-frame: (wrong-type-argument number-or-marker-p nil) Drew Adams
2008-10-04 16:38 ` Drew Adams [this message]
2008-11-22 16:46 ` bug#670: " Drew Adams
2009-10-06 16:19 ` Drew Adams
2010-11-27 2:52 ` Drew Adams
2010-11-27 8:22 ` bug#1077: " Eli Zaretskii
2010-11-27 16:15 ` Drew Adams
2010-11-27 20:10 ` Eli Zaretskii
2010-11-27 23:32 ` Drew Adams
2010-11-28 7:21 ` Eli Zaretskii
2010-11-28 9:50 ` martin rudalics
2010-11-28 13:41 ` Eli Zaretskii
2010-11-28 14:12 ` martin rudalics
2010-11-28 17:29 ` Drew Adams
2010-11-28 17:26 ` Drew Adams
2010-11-28 17:50 ` Eli Zaretskii
2010-11-28 18:42 ` Drew Adams
2010-11-28 19:54 ` Eli Zaretskii
2010-11-28 22:38 ` Drew Adams
2010-11-28 20:43 ` Stefan Monnier
2010-11-28 19:40 ` Eli Zaretskii
2010-11-28 19:46 ` Drew Adams
2010-11-28 20:23 ` Eli Zaretskii
2010-11-29 10:56 ` martin rudalics
2010-11-29 18:58 ` Eli Zaretskii
2010-11-29 20:14 ` martin rudalics
2010-11-29 21:18 ` Eli Zaretskii
2010-11-29 21:33 ` Drew Adams
2010-11-30 4:05 ` Eli Zaretskii
2010-11-30 7:56 ` martin rudalics
2010-11-30 11:23 ` Eli Zaretskii
2010-11-30 14:01 ` martin rudalics
2010-11-30 15:11 ` Eli Zaretskii
2010-11-30 15:56 ` Drew Adams
2010-11-30 17:07 ` martin rudalics
2010-11-30 17:57 ` Drew Adams
2010-11-30 19:49 ` martin rudalics
2010-11-30 20:16 ` Drew Adams
2010-11-30 18:20 ` Eli Zaretskii
2010-11-30 18:16 ` Eli Zaretskii
2010-11-30 19:16 ` Drew Adams
2010-11-30 17:05 ` martin rudalics
2010-11-30 17:57 ` Drew Adams
2010-11-30 18:27 ` Eli Zaretskii
2010-11-30 19:50 ` martin rudalics
2010-11-30 20:18 ` Drew Adams
2010-12-01 9:58 ` martin rudalics
2010-12-01 15:13 ` Drew Adams
2010-12-01 17:28 ` martin rudalics
2010-12-01 18:19 ` Drew Adams
2010-11-30 19:49 ` martin rudalics
2010-11-30 20:17 ` Drew Adams
2010-11-30 18:18 ` Eli Zaretskii
2010-12-01 9:58 ` martin rudalics
2010-12-01 17:21 ` Eli Zaretskii
2010-12-01 15:05 ` Lennart Borgman
2010-11-30 11:42 ` Eli Zaretskii
2010-11-30 15:42 ` Drew Adams
2010-11-30 18:12 ` Eli Zaretskii
2010-11-30 19:16 ` Drew Adams
2010-12-09 19:11 ` Eli Zaretskii
2010-12-01 15:48 ` Stefan Monnier
2010-12-01 17:27 ` martin rudalics
2010-11-30 20:21 ` Drew Adams
2010-11-30 21:28 ` Eli Zaretskii
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='009701c9263f$9cce7120$0200a8c0@us.oracle.com' \
--to=drew.adams@oracle.com \
--cc=1077@emacsbugs.donarmstrong.com \
--cc=emacs-pretest-bug@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).