Subject: Re: bug#9726: 24.0.90; vc-dir: error in process sentinel - Wrong argument type

From: Glenn Morris <[email-masked]>
Date: Tue, 11 Oct 2011 14:08:41 -0400

Jason Rumney wrote:

> The same can be reproduced on GNU/Linux by starting from the
> autom4te.cache subdirectory of a bzr working tree of Emacs.

Ie, the error occurs when running vc-dir from a directory that is
ignored by bzr. The following seems to make the error go away, but may
not be complete/correct, since any files in the ignored directory are
reported as unregistered. Mind you, that is how `bzr status -S .'
reports them from the command-line.

*** lisp/vc/vc-bzr.el	2011-09-18 20:43:20 +0000
--- lisp/vc/vc-bzr.el	2011-10-11 18:06:41 +0000
***************
*** 866,872 ****
  		       (" M " . edited) ;; file text modified
  		       ("  *" . edited) ;; execute bit changed
  		       (" M*" . edited) ;; text modified + execute bit changed
! 		       ;; FIXME: what about ignored files?
  		       (" D " . missing)
                         ;; For conflicts, should we list the .THIS/.BASE/.OTHER?
  		       ("C  " . conflict)
--- 866,872 ----
  		       (" M " . edited) ;; file text modified
  		       ("  *" . edited) ;; execute bit changed
  		       (" M*" . edited) ;; text modified + execute bit changed
! 		       ("I  " . ignored)
  		       (" D " . missing)
                         ;; For conflicts, should we list the .THIS/.BASE/.OTHER?
  		       ("C  " . conflict)
***************
*** 916,922 ****
                (push (list new-name 'edited
                            (vc-bzr-create-extra-fileinfo old-name)) result)))
             ;; do nothing for non existent files
!            ((eq translated 'not-found))
             (t
              (push (list (file-relative-name
                           (buffer-substring-no-properties
--- 916,922 ----
                (push (list new-name 'edited
                            (vc-bzr-create-extra-fileinfo old-name)) result)))
             ;; do nothing for non existent files
!            ((memq translated '(not-found ignored)))
             (t
              (push (list (file-relative-name
                           (buffer-substring-no-properties