Subject: Re: bug#2157: 23.0.90; bzr support: vc-diff doesn't work with prefix argument on unchanged files

From: Torsten Bronger <[email-masked]>
Date: Mon, 02 Feb 2009 21:37:07 +0100

Hallöchen!

Dan Nicolaescu writes:

> Torsten Bronger <[email-masked]> writes:
>
>> If I visit an unchanged file under bzr revision control, i.e. the
>> modeline says "Bzr-" (NOT "Bzr:"), I can't use C-u C-x v =,
>> i.e. vc-diff but with explicit revision parameters.  The error
>> message is:
>> 
>> vc-bzr-previous-revision: Wrong type argument: stringp, nil
>
> I can't reproduce this on my GNU/Linux machine.  What version of
> bzr are you using?

1.11

> Can you do: Options / Enter debugger on error and then please
> email here the contents of the *Backtrace* buffer that appears
> when the error occurs.

I hope this is what you need:

Debugger entered--Lisp error: (wrong-type-argument stringp nil)
  string-match("\\`[0-9]+\\'" nil)
  vc-bzr-previous-revision("/home/bronger/src/chantal/current/chantal/samples/remote_client/la2chantal.py" nil)
  apply(vc-bzr-previous-revision ("/home/bronger/src/chantal/current/chantal/samples/remote_client/la2chantal.py" nil))
  vc-call-backend(Bzr previous-revision "/home/bronger/src/chantal/current/chantal/samples/remote_client/la2chantal.py" nil)
  (setq rev1-default (vc-call-backend backend (quote previous-revision) first (vc-working-revision first)))
  (cond ((/= ... 1) nil) ((file-directory-p first) nil) ((not ...) (setq rev1-default ...)) (t (setq rev1-default ...) (when ... ...) (setq rev2-default ...)))
  (let* ((vc-fileset ...) (files ...) (backend ...) (first ...) (completion-table ...) (rev1-default nil) (rev2-default nil)) (cond (... nil) (... nil) (... ...) (t ... ... ...)) (let* (... ... ... ...) (when ... ...) (when ... ...) (list files rev1 rev2)))
  call-interactively(vc-version-diff)
  vc-diff((4) t)
  call-interactively(vc-diff nil nil)

Tschö,
Torsten.

-- 
Torsten Bronger, aquisgrana, europa vetus
                   Jabber ID: [email-masked]