From: Bob Rogers <rogers@rgrjr.dyndns.org>
To: emacs-pretest-bug@gnu.org
Subject: bug#3261: 23.0.93; minor vc-dir initialization bug
Date: Mon, 11 May 2009 22:30:07 -0400 (EDT) [thread overview]
Message-ID: <20090512023007.5F56E484BF@rgr.rgrjr.com> (raw)
To reproduce in Emacs trunk (as of Friday):
1. "emacs -Q" in a VC directory, preferably one in which updates
take more than a few seconds (large tree, distant/slow server, or both).
2. "C-x v d" to get into the *vc-dir* buffer, and *immediately* type
"n" (vc-dir-next-line) before the buffer has any file lines.
This gives me a "wrong type argument" error (backtrace below) when
ewoc-goto-node tries to treat "nil" as a node. The tweak to
ewoc-goto-next (below the backtrace) produces a better error message,
but is still too generic.
-- Bob Rogers
http://www.rgrjr.com/
========================================================================
Backtrace:
Debugger entered--Lisp error: (wrong-type-argument arrayp nil)
ewoc-goto-node([cl-struct-ewoc #<buffer *vc-dir*> (lambda (&rest --cl-rest--) (apply #[... "\bJ !=3fff88=3fffc2c=3fff87" [G39800 data "\n"] 2] ... --cl-rest--)) [[[#1 #2 "" #<marker at 114 in *vc-dir*>] #1 DL-LIST #<marker at 115 in *vc-dir*>] [#1 [#2 #1 DL-LIST #<marker at 115 in *vc-dir*>] "" #<marker at 114 in *vc-dir*>] #("VC backend : SVN\nWorking dir: /shared.local/mgi/modest/\nRepository : https://www.modulargenetics.com/svn/modest\n" 0 13 ... 13 17 ... 17 30 ... 30 56 ... 56 69 ... 69 111 ...) #<marker at 1 in *vc-dir*>] [[[#1 #2 DL-LIST #<marker at 115 in *vc-dir*>] #1 #("VC backend : SVN\nWorking dir: /shared.local/mgi/modest/\nRepository : https://www.modulargenetics.com/svn/modest\n" 0 13 ... 13 17 ... 17 30 ... 30 56 ... 56 69 ... 69 111 ...) #<marker at 1 in *vc-dir*>] [#1 [
#2 #1 #("VC backend : SVN\nWorking dir: /shared.local/mgi/modest/\nRepository : https://www.modulargenetics.com/svn/modest\n" 0 13 ... 13 17 ... 17 30 ... 30 56 ... 56 69 ... 69 111 ...) #<m
arker at 1 in *vc-dir*>] DL-LIST #<marker at 115 in *vc-dir*>] "" #<marker at 114 in *vc-dir*>] [[[#1 #2 #("VC backend : SVN\nWorking dir: /shared.local/mgi/modest/\nRepository : https://www.modulargenetics.com/svn/modest\n" 0 13 ... 13 17 ... 17 30 ... 30 56 ... 56 69 ... 69 111 ...) #<marker at 1 in *vc-dir*>] #1 "" #<marker at 114 in *vc-dir*>] [#1 [#2 #1 "" #<marker at 114 in *vc-dir*>] #("VC backend : SVN\nWorking dir: /shared.local/mgi/modest/\nRepository : https://www.modulargenetics.com/svn/modest\n" 0 13 ... 13 17 ... 17 30 ... 30 56 ... 56 69 ... 69 111 ...) #<marker at 1 in *vc-dir*>] DL-LIST #<marker at 115 in *vc-dir*>] nil (lambda (&rest --cl-rest--) (apply #[... "\bJ !=3fff88=3fffc2c=3fff87" [G39800 data "\n"] 2] ... --cl-rest--))] nil)
ewoc-goto-next([cl-struct-ewoc #<buffer *vc-dir*> (lambda (&rest --cl-rest--) (apply #[... "\bJ !=3fff88=3fffc2c=3fff87" [G39800 data "\n"] 2] ... --cl-rest--)) [[[#1 #2 "" #<marker at 114 in *vc-dir*>] #1 DL-LIST #<marker at 115 in *vc-dir*>] [#1 [#2 #1 DL-LIST #<marker at 115 in *vc-dir*>] "" #<marker at 114 in *vc-dir*>] #("VC backend : SVN\nWorking dir: /shared.local/mgi/modest/\nRepository : https://www.modulargenetics.com/svn/modest\n" 0 13 ... 13 17 ... 17 30 ... 30 56 ... 56 69 ... 69 111 ...) #<marker at 1 in *vc-dir*>] [[[#1 #2 DL-LIST #<marker at 115 in *vc-dir*>] #1 #("VC backend : SVN\nWorking dir: /shared.local/mgi/modest/\nRepository : https://www.modulargenetics.com/svn/modest\n" 0 13 ... 13 17 ... 17 30 ... 30 56 ... 56 69 ... 69 111 ...) #<marker at 1 in *vc-dir*>] [#1 [
#2 #1 #("VC backend : SVN\nWorking dir: /shared.local/mgi/modest/\nRepository : https://www.modulargenetics.com/svn/modest\n" 0 13 ... 13 17 ... 17 30 ... 30 56 ... 56 69 ... 69 111 ...) #<m
arker at 1 in *vc-dir*>] DL-LIST #<marker at 115 in *vc-dir*>] "" #<marker at 114 in *vc-dir*>] [[[#1 #2 #("VC backend : SVN\nWorking dir: /shared.local/mgi/modest/\nRepository : https://www.modulargenetics.com/svn/modest\n" 0 13 ... 13 17 ... 17 30 ... 30 56 ... 56 69 ... 69 111 ...) #<marker at 1 in *vc-dir*>] #1 "" #<marker at 114 in *vc-dir*>] [#1 [#2 #1 "" #<marker at 114 in *vc-dir*>] #("VC backend : SVN\nWorking dir: /shared.local/mgi/modest/\nRepository : https://www.modulargenetics.com/svn/modest\n" 0 13 ... 13 17 ... 17 30 ... 30 56 ... 56 69 ... 69 111 ...) #<marker at 1 in *vc-dir*>] DL-LIST #<marker at 115 in *vc-dir*>] nil (lambda (&rest --cl-rest--) (apply #[... "\bJ !=3fff88=3fffc2c=3fff87" [G39800 data "\n"] 2] ... --cl-rest--))] 1)
vc-dir-next-line(1)
call-interactively(vc-dir-next-line nil nil)
===================================================================
Patch:
RCS file: /sources/emacs/emacs/lisp/emacs-lisp/ewoc.el,v
retrieving revision 1.47
diff -u -r1.47 ewoc.el
--- lisp/emacs-lisp/ewoc.el 5 Jan 2009 03:21:00 -0000 1.47
+++ lisp/emacs-lisp/ewoc.el 12 May 2009 02:21:47 -0000
@@ -496,6 +496,8 @@
;; Never step below the first element.
;; (unless (ewoc--filter-hf-nodes ewoc node)
;; (setq node (ewoc--node-nth dll -2)))
+ (unless node
+ (error "No next."))
(ewoc-goto-node ewoc node)))
(defun ewoc-goto-node (ewoc node)
========================================================================
In GNU Emacs 23.0.93.1 (i686-pc-linux-gnu, GTK+ Version 2.12.9)
of 2009-05-08 on rgr
Windowing system distributor `The X.Org Foundation', version 11.0.10400090
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
next reply other threads:[~2009-05-12 2:30 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-05-12 2:30 Bob Rogers [this message]
2011-03-04 5:16 ` bug#3261: 23.0.93; minor vc-dir initialization bug Glenn Morris
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
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20090512023007.5F56E484BF@rgr.rgrjr.com \
--to=rogers@rgrjr.dyndns.org \
--cc=3261@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 external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.