GNU bug report logs - #2388
23.0.90; wrong-type-argument in vc-dir

Previous Next

Package: emacs;

Reported by: robert <robert.marshall <at> tnei.co.uk>

Date: Thu, 19 Feb 2009 14:30:05 UTC

Severity: normal

Merged with 2566

Done: Dan Nicolaescu <dann <at> ics.uci.edu>

Bug is archived. No further changes may be made.

Full log


Message #28 received at 2388 <at> emacsbugs.donarmstrong.com (full text, mbox):

From: nickrob <at> snap.net.nz (Nick Roberts)
To: robert marshall <robert.marshall <at> tnei.co.uk>,
        2388 <at> debbugs.gnu.org, Dan Nicolaescu <dann <at> ics.uci.edu>
Subject: Re: bug#2388: 23.0.90; wrong-type-argument in vc-dir
Date: Wed, 4 Mar 2009 23:14:51 +1300
Nick Roberts writes:
 >  > > I can't reproduce this.
 >  > > Can you please post step by step recipe of how you get this, starting
 >  > > with emacs -Q. 
 >  > > The output of 
 >  > > svn -u status
 >  > > in that directory might be helpful too.
 >  > >   
 >  > I can't reproduce this either now :-(
 > 
 > I have seen this sometimes when files have needed merging/updating.  I don't
 > think it happened earlier because with SVN emacs didn't consult the remote
 > repository by default:

I still see this.  Here's a recent backtrace:

Debugger entered--Lisp error: (wrong-type-argument arrayp nil)
  ewoc-data(nil)
  (let ((data ...)) (or (vc-dir-fileinfo->directory data) 
(file-name-directory ...)))
  vc-dir-node-directory(nil)
  (let* ((rd ...) (prev-node ...) (prev-dir ...)) (unless (string-equal 
entrydir prev-dir) (ewoc-enter-before vc-ewoc node ...)))
  (cond ((string-lessp nodedir entrydir) (setq node ...)) ((string-equal 
nodedir entrydir) (let ... ...)) (t (let* ... ...) (ewoc-enter-before 
vc-ewoc node ...) (setq entries ... entry ...)))
  (let* ((entryfile ...) (entrydir ...) (nodedir ...)) (cond (... ...) 
(... ...) (t ... ... ...)))
  (while (and entry node) (let* (... ... ...) (cond ... ... ...)))
  (let ((entry ...) (node ...) (dotname ...)) (unless node 
(ewoc-enter-last vc-ewoc ...) (setq node ...)) (while (and entry node) 
(let* ... ...)) (unless (or node noinsert) (let ... ...)))
  (save-current-buffer (set-buffer buffer) (setq entries (sort entries 
...)) (let (... ... ...) (unless node ... ...) (while ... ...) (unless 
... ...)))
  (with-current-buffer buffer (setq entries (sort entries ...)) (let 
(... ... ...) (unless node ... ...) (while ... ...) (unless ... ...)))
  vc-dir-update((("." needs-update) ("mydir" needs-update) 
("pom.xml" needs-update) ("mydir1/mydir2/myfile" needs-update) 
...

which fails because node, i.e (ewoc-nth vc-ewoc 0), is nil.

-- 
Nick                                           http://www.inet.net.nz/~nickrob




This bug report was last modified 16 years and 97 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.