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.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 2388 in the body.
You can then email your comments to 2388 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>:
bug#2388; Package emacs. (Thu, 19 Feb 2009 14:30:05 GMT) Full text and rfc822 format available.

Acknowledgement sent to robert <robert.marshall <at> tnei.co.uk>:
New bug report received and forwarded. Copy sent to Emacs Bugs <bug-gnu-emacs <at> gnu.org>. (Thu, 19 Feb 2009 14:30:06 GMT) Full text and rfc822 format available.

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

From: robert <robert.marshall <at> tnei.co.uk>
To: emacs-pretest-bug <at> gnu.org
Subject: 23.0.90; wrong-type-argument in vc-dir
Date: Thu, 19 Feb 2009 14:21:16 +0000
If I run vc-dir in a svn controlled directory called 'Test Networks'
(with the internal space but not the quotes!), I get a wrong-type-argument
error, with the following traceback - 

Debugger entered--Lisp error: (wrong-type-argument arrayp nil)
  ewoc-data(nil)
  vc-dir-node-directory(nil)

when I don't have debug-on-error set to t the *vc-dir* process never
completes.


In GNU Emacs 23.0.90.4 (i686-pc-linux-gnu, GTK+ Version 2.14.4)
 of 2009-02-16 on robert-laptop
Windowing system distributor `The X.Org Foundation', version 11.0.10502000
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_GB.UTF-8
  value of $XMODIFIERS: nil
  locale-coding-system: utf-8-unix
  default-enable-multibyte-characters: t

Major mode: VC dir

Minor modes in effect:
  diff-auto-refine-mode: t
  desktop-save-mode: t
  shell-dirtrack-mode: t
  recentf-mode: t
  show-paren-mode: t
  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





Information forwarded to bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>:
bug#2388; Package emacs. (Fri, 20 Feb 2009 16:20:03 GMT) Full text and rfc822 format available.

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

From: Dan Nicolaescu <dann <at> ics.uci.edu>
To: robert <robert.marshall <at> tnei.co.uk>
Cc: 2388 <at> debbugs.gnu.org
Subject: Re: bug#2388: 23.0.90; wrong-type-argument in vc-dir
Date: Fri, 20 Feb 2009 08:12:15 -0800 (PST)
robert <robert.marshall <at> tnei.co.uk> writes:

  > If I run vc-dir in a svn controlled directory called 'Test Networks'
  > (with the internal space but not the quotes!), I get a wrong-type-argument
  > error, with the following traceback - 
  > 
  > Debugger entered--Lisp error: (wrong-type-argument arrayp nil)
  >   ewoc-data(nil)
  >   vc-dir-node-directory(nil)
  > 
  > when I don't have debug-on-error set to t the *vc-dir* process never
  > completes.

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.




Information forwarded to bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>:
bug#2388; Package emacs. (Mon, 23 Feb 2009 14:45:06 GMT) Full text and rfc822 format available.

Acknowledgement sent to robert marshall <robert.marshall <at> tnei.co.uk>:
Extra info received and forwarded to list. Copy sent to Emacs Bugs <bug-gnu-emacs <at> gnu.org>. (Mon, 23 Feb 2009 14:45:06 GMT) Full text and rfc822 format available.

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

From: robert marshall <robert.marshall <at> tnei.co.uk>
To: Dan Nicolaescu <dann <at> ics.uci.edu>
Cc: 2388 <at> debbugs.gnu.org
Subject: Re: bug#2388: 23.0.90; wrong-type-argument in vc-dir
Date: Mon, 23 Feb 2009 14:35:29 +0000
Dan Nicolaescu wrote:
> robert <robert.marshall <at> tnei.co.uk> writes:
>
>   > If I run vc-dir in a svn controlled directory called 'Test Networks'
>   > (with the internal space but not the quotes!), I get a wrong-type-argument
>   > error, with the following traceback - 
>   > 
>   > Debugger entered--Lisp error: (wrong-type-argument arrayp nil)
>   >   ewoc-data(nil)
>   >   vc-dir-node-directory(nil)
>   > 
>   > when I don't have debug-on-error set to t the *vc-dir* process never
>   > completes.
>
> 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've done some checkins in that location and added a couple of files 
between when I reported the problem (which was very reproducible)
and now.
I will keep an eye on things and give a detailed recipe (and svn status) 
if it recurs.

Robert

-- 
Robert A J Marshall,  
TNEI Services Ltd, 86-90 London Road, Manchester, M1 2PW 
Registered in England & Wales No. 03891836,
Registered office:  Milburn House, Dean Street, Newcastle upon Tyne, NE1 1LE
tel: +44 161 615 6017; fax: +44 161 615 6001; mobile: +44 7759 688384 
web: http://IPSA-Power.com 





Information forwarded to bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>:
bug#2388; Package emacs. (Tue, 24 Feb 2009 06:25:04 GMT) Full text and rfc822 format available.

Acknowledgement sent to Nick Roberts <nickrob <at> snap.net.nz>:
Extra info received and forwarded to list. Copy sent to Emacs Bugs <bug-gnu-emacs <at> gnu.org>. (Tue, 24 Feb 2009 06:25:04 GMT) Full text and rfc822 format available.

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

From: Nick Roberts <nickrob <at> snap.net.nz>
To: robert marshall <robert.marshall <at> tnei.co.uk>,
        2388 <at> debbugs.gnu.org
Cc: Dan Nicolaescu <dann <at> ics.uci.edu>
Subject: Re: bug#2388: 23.0.90; wrong-type-argument in vc-dir
Date: Tue, 24 Feb 2009 19:18:03 +1300
robert marshall writes:
 > >   > If I run vc-dir in a svn controlled directory called 'Test Networks'
 > >   > (with the internal space but not the quotes!), I get a wrong-type-argument
 > >   > error, with the following traceback - 
 > >   > 
 > >   > Debugger entered--Lisp error: (wrong-type-argument arrayp nil)
 > >   >   ewoc-data(nil)
 > >   >   vc-dir-node-directory(nil)
 > >   > 
 > >   > when I don't have debug-on-error set to t the *vc-dir* process never
 > >   > completes.
 > >
 > > 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:

2009-01-30  Nick Roberts  <nickrob <at> snap.net.nz>

	* vc-svn.el (vc-svn-dir-status): Correct logic for remote
	connection.  (Bug#2093)

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




Reply sent to Dan Nicolaescu <dann <at> ics.uci.edu>:
You have taken responsibility. (Wed, 25 Feb 2009 04:05:06 GMT) Full text and rfc822 format available.

Notification sent to robert <robert.marshall <at> tnei.co.uk>:
bug acknowledged by developer. (Wed, 25 Feb 2009 04:05:06 GMT) Full text and rfc822 format available.

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

From: Dan Nicolaescu <dann <at> ics.uci.edu>
To: robert marshall <robert.marshall <at> tnei.co.uk>
Cc: 2388-done <at> debbugs.gnu.org
Subject: Re: bug#2388: 23.0.90; wrong-type-argument in vc-dir
Date: Tue, 24 Feb 2009 19:57:13 -0800 (PST)
robert marshall <robert.marshall <at> tnei.co.uk> writes:

  > I can't reproduce this either now :-(

Then the bug is closed.




Information forwarded to bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>:
bug#2388; Package emacs. (Wed, 04 Mar 2009 10:20:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to nickrob <at> snap.net.nz (Nick Roberts):
Extra info received and forwarded to list. Copy sent to Emacs Bugs <bug-gnu-emacs <at> gnu.org>. (Wed, 04 Mar 2009 10:20:03 GMT) Full text and rfc822 format available.

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




bug reopened, originator not changed. Request was from Glenn Morris <rgm <at> gnu.org> to control <at> emacsbugs.donarmstrong.com. (Wed, 04 Mar 2009 20:25:03 GMT) Full text and rfc822 format available.

bug reassigned from package `emacs' to `emacs,vc-dir'. Request was from Glenn Morris <rgm <at> gnu.org> to control <at> emacsbugs.donarmstrong.com. (Wed, 04 Mar 2009 20:25:03 GMT) Full text and rfc822 format available.

Merged 2388 2566. Request was from Glenn Morris <rgm <at> gnu.org> to control <at> emacsbugs.donarmstrong.com. (Wed, 04 Mar 2009 20:25:04 GMT) Full text and rfc822 format available.

Information forwarded to bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>, owner <at> emacsbugs.donarmstrong.com:
bug#2388; Package emacs,vc-dir. (Tue, 10 Mar 2009 09:50:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to robert marshall <robert.marshall <at> tnei.co.uk>:
Extra info received and forwarded to list. Copy sent to Emacs Bugs <bug-gnu-emacs <at> gnu.org>, owner <at> emacsbugs.donarmstrong.com. (Tue, 10 Mar 2009 09:50:04 GMT) Full text and rfc822 format available.

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

From: robert marshall <robert.marshall <at> tnei.co.uk>
To: Nick Roberts <nickrob <at> snap.net.nz>
Cc: 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: Tue, 10 Mar 2009 09:42:52 +0000
Nick Roberts wrote:
> 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.
>
>   
I'm seeing this, today, the status gives me

svn -u status
      *     7243   tests/compare.py
      *     7243   tests/harm.py
      *     7243   tests/setup-win.py
      *     7243   ipsa.i
      *     7243   Makefile
      *     7243   IscNetComponent.cpp
      *     7243   IscNetComparator.h
      *     7243   IpsaComparator.cpp
      *     7243   IscNetComponent.h
      *     7243   IscNetComparator.cpp
      *            IscCompareData.h
?                   ipsa_wrap.cpp
M      *     7243   IscInterface.cpp
?                   ipsa.py
      *            IscCompareData.cpp
      *     7243   Scripting.vcproj
      *     7243   .
Status against revision:   7248

I run emacs -Q and immediately

(vc-dir "/home/robert/IPSA/IPSA+1.6/Scripting/" nil)

and i get the following traceback
ewoc-data(nil)
vc-dir-node-directory(nil)
vc-dir-update((("." needs-update) ("IpsaComparator.cpp" needs-update) 
("IscCompareData.cpp" needs-update) ("IscCompareData.h" needs-update) 
("IscInterface.cpp" needs-merge) ("IscNetComparator.cpp" needs-update) 
("IscNetComparator.h" needs-update) ("IscNetComponent.cpp" needs-update) 
("IscNetComponent.h" needs-update) ("Makefile" needs-update) 
("Scripting.vcproj" needs-update) ("ipsa.i" needs-update) ("ipsa.py" 
unregistered) ("ipsa_wrap.cpp" unregistered) ("tests/compare.py" 
needs-update) ("tests/harm.py" needs-update) ("tests/setup-win.py" 
needs-update)) #<buffer *vc-dir*>)
#[(G93901 entries &optional more-to-come) "rJqÆ J\"\n?'

Robert

-- 
Robert A J Marshall,  
TNEI Services Ltd, 86-90 London Road, Manchester, M1 2PW 
Registered in England & Wales No. 03891836,
Registered office:  Milburn House, Dean Street, Newcastle upon Tyne, NE1 1LE
tel: +44 161 615 6017; fax: +44 161 615 6001; mobile: +44 7759 688384 
web: http://IPSA-Power.com 





Information forwarded to bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>, owner <at> emacsbugs.donarmstrong.com:
bug#2388; Package emacs,vc-dir. (Tue, 10 Mar 2009 21:20:03 GMT) Full text and rfc822 format available.

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

From: Dan Nicolaescu <dann <at> ics.uci.edu>
To: robert marshall <robert.marshall <at> tnei.co.uk>
Cc: Nick Roberts <nickrob <at> snap.net.nz>, 2388 <at> debbugs.gnu.org
Subject: Re: bug#2388: 23.0.90; wrong-type-argument in vc-dir
Date: Tue, 10 Mar 2009 14:11:01 -0700 (PDT)
robert marshall <robert.marshall <at> tnei.co.uk> writes:

  > Nick Roberts wrote:
  > > 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.
  > >
  > >   
  > I'm seeing this, today, the status gives me
  > 
  > svn -u status
  >       *     7243   tests/compare.py
  >       *     7243   tests/harm.py
  >       *     7243   tests/setup-win.py
  >       *     7243   ipsa.i
  >       *     7243   Makefile
  >       *     7243   IscNetComponent.cpp
  >       *     7243   IscNetComparator.h
  >       *     7243   IpsaComparator.cpp
  >       *     7243   IscNetComponent.h
  >       *     7243   IscNetComparator.cpp
  >       *            IscCompareData.h
  > ?                   ipsa_wrap.cpp
  > M      *     7243   IscInterface.cpp
  > ?                   ipsa.py
  >       *            IscCompareData.cpp
  >       *     7243   Scripting.vcproj
  >       *     7243   .
       ^^^^^^^^^^^^^^^^^^^^^^^^ 
   This might be the cause of the problem.  Can you please try thing
   patch:


Index: vc-svn.el
===================================================================
RCS file: /cvsroot/emacs/emacs/lisp/vc-svn.el,v
retrieving revision 1.112
diff -u -3 -p -u -p -r1.112 vc-svn.el
--- vc-svn.el 10 Feb 2009 05:59:14 -0000        1.112
+++ vc-svn.el 10 Mar 2009 20:49:23 -0000
@@ -176,7 +176,7 @@ want to force an empty list of arguments
        ;; FIXME are there other possible combinations?
             (cond ((eq state 'edited) (setq state 'needs-merge))
                      ((not state) (setq state 'needs-update))))
-       (when state
+       (when (and state (not (string= "." filename)))
          (setq result (cons (list filename state) result)))))
     (funcall callback result)))




Information forwarded to bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>, owner <at> emacsbugs.donarmstrong.com:
bug#2388; Package emacs,vc-dir. (Wed, 11 Mar 2009 08:50:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to robert marshall <robert.marshall <at> tnei.co.uk>:
Extra info received and forwarded to list. Copy sent to Emacs Bugs <bug-gnu-emacs <at> gnu.org>, owner <at> emacsbugs.donarmstrong.com. (Wed, 11 Mar 2009 08:50:02 GMT) Full text and rfc822 format available.

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

From: robert marshall <robert.marshall <at> tnei.co.uk>
To: Dan Nicolaescu <dann <at> ics.uci.edu>
Cc: Nick Roberts <nickrob <at> snap.net.nz>, 2388 <at> debbugs.gnu.org
Subject: Re: bug#2388: 23.0.90; wrong-type-argument in vc-dir
Date: Wed, 11 Mar 2009 08:44:29 +0000
Dan Nicolaescu wrote:
> robert marshall <robert.marshall <at> tnei.co.uk> writes:
>
>   > Nick Roberts wrote:
>   > > 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)
>   .. <snip>
>   > >   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.
>   > >
>   > >   
>   > I'm seeing this, today, the status gives me
>   > 
>   > svn -u status
>   >       *     7243   tests/compare.py
>   >       *     7243   tests/harm.py
>   >       *     7243   tests/setup-win.py
>   >       *     7243   ipsa.i
>   >       *     7243   Makefile
>   >       *     7243   IscNetComponent.cpp
>   >       *     7243   IscNetComparator.h
>   >       *     7243   IpsaComparator.cpp
>   >       *     7243   IscNetComponent.h
>   >       *     7243   IscNetComparator.cpp
>   >       *            IscCompareData.h
>   > ?                   ipsa_wrap.cpp
>   > M      *     7243   IscInterface.cpp
>   > ?                   ipsa.py
>   >       *            IscCompareData.cpp
>   >       *     7243   Scripting.vcproj
>   >       *     7243   .
>        ^^^^^^^^^^^^^^^^^^^^^^^^ 
>    This might be the cause of the problem.  Can you please try thing
>    patch:
>
>
> Index: vc-svn.el
> ===================================================================
> RCS file: /cvsroot/emacs/emacs/lisp/vc-svn.el,v
> retrieving revision 1.112
> diff -u -3 -p -u -p -r1.112 vc-svn.el
> --- vc-svn.el 10 Feb 2009 05:59:14 -0000        1.112
> +++ vc-svn.el 10 Mar 2009 20:49:23 -0000
> @@ -176,7 +176,7 @@ want to force an empty list of arguments
>         ;; FIXME are there other possible combinations?
>              (cond ((eq state 'edited) (setq state 'needs-merge))
>                       ((not state) (setq state 'needs-update))))
> -       (when state
> +       (when (and state (not (string= "." filename)))
>           (setq result (cons (list filename state) result)))))
>      (funcall callback result)))
>   
Thanks for this, I've installed it and will persuade my colleagues to do 
a few checkins :-)
Not sure why svn should list '.' as needing an update.  Unfortunately my 
svn is now
up to date so I can't, currently, replicate this issue.

Robert

-- 
Robert A J Marshall,  
TNEI Services Ltd, 86-90 London Road, Manchester, M1 2PW 
Registered in England & Wales No. 03891836,
Registered office:  Milburn House, Dean Street, Newcastle upon Tyne, NE1 1LE
tel: +44 161 615 6017; fax: +44 161 615 6001; mobile: +44 7759 688384 
web: http://IPSA-Power.com 





Information forwarded to bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>, owner <at> emacsbugs.donarmstrong.com:
bug#2388; Package emacs,vc-dir. (Thu, 12 Mar 2009 00:55:03 GMT) Full text and rfc822 format available.

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

From: Dan Nicolaescu <dann <at> ics.uci.edu>
To: robert marshall <robert.marshall <at> tnei.co.uk>
Cc: 2388 <at> debbugs.gnu.org
Subject: Re: bug#2388: 23.0.90; wrong-type-argument in vc-dir
Date: Wed, 11 Mar 2009 17:48:22 -0700 (PDT)
robert marshall <robert.marshall <at> tnei.co.uk> writes:

  > Dan Nicolaescu wrote:
  > > robert marshall <robert.marshall <at> tnei.co.uk> writes:
  > >
  > >   > Nick Roberts wrote:
  > >   > > 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)
  > >   .. <snip>
  > >   > >   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.
  > >   > >
  > >   > >     > I'm seeing this, today, the status gives me
  > >   >   > svn -u status
  > >   >       *     7243   tests/compare.py
  > >   >       *     7243   tests/harm.py
  > >   >       *     7243   tests/setup-win.py
  > >   >       *     7243   ipsa.i
  > >   >       *     7243   Makefile
  > >   >       *     7243   IscNetComponent.cpp
  > >   >       *     7243   IscNetComparator.h
  > >   >       *     7243   IpsaComparator.cpp
  > >   >       *     7243   IscNetComponent.h
  > >   >       *     7243   IscNetComparator.cpp
  > >   >       *            IscCompareData.h
  > >   > ?                   ipsa_wrap.cpp
  > >   > M      *     7243   IscInterface.cpp
  > >   > ?                   ipsa.py
  > >   >       *            IscCompareData.cpp
  > >   >       *     7243   Scripting.vcproj
  > >   >       *     7243   .
  > >        ^^^^^^^^^^^^^^^^^^^^^^^^    This might be the cause of the
  > > problem.  Can you please try thing
  > >    patch:
  > >
  > >
  > > Index: vc-svn.el
  > > ===================================================================
  > > RCS file: /cvsroot/emacs/emacs/lisp/vc-svn.el,v
  > > retrieving revision 1.112
  > > diff -u -3 -p -u -p -r1.112 vc-svn.el
  > > --- vc-svn.el 10 Feb 2009 05:59:14 -0000        1.112
  > > +++ vc-svn.el 10 Mar 2009 20:49:23 -0000
  > > @@ -176,7 +176,7 @@ want to force an empty list of arguments
  > >         ;; FIXME are there other possible combinations?
  > >              (cond ((eq state 'edited) (setq state 'needs-merge))
  > >                       ((not state) (setq state 'needs-update))))
  > > -       (when state
  > > +       (when (and state (not (string= "." filename)))
  > >           (setq result (cons (list filename state) result)))))
  > >      (funcall callback result)))
  > >   
  > Thanks for this, I've installed it and will persuade my colleagues to
  > do a few checkins :-)
  > Not sure why svn should list '.' as needing an update.  Unfortunately
  > my svn is now
  > up to date so I can't, currently, replicate this issue.

I would say it would be better to not install the above patch.  You can
install it whenever you hit the problem again and see if it help.
In case it doesn't saving the tree that generates the problem would help
testing a different fix.




Reply sent to Dan Nicolaescu <dann <at> ics.uci.edu>:
You have taken responsibility. (Wed, 15 Apr 2009 00:40:03 GMT) Full text and rfc822 format available.

Notification sent to robert <robert.marshall <at> tnei.co.uk>:
bug acknowledged by developer. (Wed, 15 Apr 2009 00:40:04 GMT) Full text and rfc822 format available.

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

From: Dan Nicolaescu <dann <at> ics.uci.edu>
To: 2388-done <at> debbugs.gnu.org
Cc: robert marshall <robert.marshall <at> tnei.co.uk>
Subject: Re: bug#2388: 23.0.90; wrong-type-argument in vc-dir
Date: Tue, 14 Apr 2009 17:30:16 -0700 (PDT)
Dan Nicolaescu <dann <at> ics.uci.edu> writes:

  > robert marshall <robert.marshall <at> tnei.co.uk> writes:
  > 
  >   > Nick Roberts wrote:
  >   > > 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.
  >   > >
  >   > >   
  >   > I'm seeing this, today, the status gives me
  >   > 
  >   > svn -u status
  >   >       *     7243   tests/compare.py
  >   >       *     7243   tests/harm.py
  >   >       *     7243   tests/setup-win.py
  >   >       *     7243   ipsa.i
  >   >       *     7243   Makefile
  >   >       *     7243   IscNetComponent.cpp
  >   >       *     7243   IscNetComparator.h
  >   >       *     7243   IpsaComparator.cpp
  >   >       *     7243   IscNetComponent.h
  >   >       *     7243   IscNetComparator.cpp
  >   >       *            IscCompareData.h
  >   > ?                   ipsa_wrap.cpp
  >   > M      *     7243   IscInterface.cpp
  >   > ?                   ipsa.py
  >   >       *            IscCompareData.cpp
  >   >       *     7243   Scripting.vcproj
  >   >       *     7243   .
  >        ^^^^^^^^^^^^^^^^^^^^^^^^ 
  >    This might be the cause of the problem.  Can you please try thing
  >    patch:
  > 
  > 
  > Index: vc-svn.el
  > ===================================================================
  > RCS file: /cvsroot/emacs/emacs/lisp/vc-svn.el,v
  > retrieving revision 1.112
  > diff -u -3 -p -u -p -r1.112 vc-svn.el
  > --- vc-svn.el 10 Feb 2009 05:59:14 -0000        1.112
  > +++ vc-svn.el 10 Mar 2009 20:49:23 -0000
  > @@ -176,7 +176,7 @@ want to force an empty list of arguments
  >         ;; FIXME are there other possible combinations?
  >              (cond ((eq state 'edited) (setq state 'needs-merge))
  >                       ((not state) (setq state 'needs-update))))
  > -       (when state
  > +       (when (and state (not (string= "." filename)))
  >           (setq result (cons (list filename state) result)))))
  >      (funcall callback result)))

After doing "svn update -rSOME_OLDER_VERSION" it seems that "." can
appear in the "svn status" output.  So I applied this patch.




Reply sent to Dan Nicolaescu <dann <at> ics.uci.edu>:
You have taken responsibility. (Wed, 15 Apr 2009 00:40:04 GMT) Full text and rfc822 format available.

Notification sent to "AE/Fischer Martin" <aemf <at> vfst.de>:
bug acknowledged by developer. (Wed, 15 Apr 2009 00:40:05 GMT) Full text and rfc822 format available.

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> emacsbugs.donarmstrong.com. (Thu, 14 May 2009 14:24:08 GMT) Full text and rfc822 format available.

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.