Subject: 25.0.95; Mode Line breakage in vc-git

From: [email-masked] (Phillip Lord)
Date: Tue, 14 Jun 2016 12:16:19 +0100

I am seeing a recurrent problem with vc, on Emacs-25. I am running emacs
via cask, which is running a test set.

The error looks like this:

  vc-call-backend(Git mode-line-string "/home/phillord/emacs/lentic/de
  vc-mode-line("/home/phillord/emacs/lentic/dev-resources/chunk-commen
  vc-refresh-state()
  run-hooks(find-file-hook)
  after-find-file(nil t)
  find-file-noselect-1(#<buffer chunk-comment.clj> "~/emacs/lentic/dev
  find-file-noselect("/home/phillord/emacs/lentic/dev-resources/chunk-
  (setq this (find-file-noselect filename))
  (set-buffer (setq this (find-file-noselect filename)))
  (save-current-buffer (set-buffer (setq this (find-file-noselect file

Initially, I only saw it when using Emacs in my git commit-hook -- the
same "make" command in the shell caused no problems. However, it is
freely reproducible by launching with "GIT_DIR=.git make -k" which
suggests this is why it is failing during the git commit.

I've tried "instrumenting" (i.e. putting lots of logging) into vc.
The immediate cause of the error appears to be in vc-git--call when it
runs the git command "symbolic-ref".

vc-git--call: about to apply: (git nil (t nil) nil symbolic-ref (HEAD))
vc-git--call: return 128

If GIT_DIR is not set this has a zero return value.

I haven't worked out yet, how to find what the error is (128 is "any
other error").