Subject: 23.0.60; vc-find-root heuristic unreliable on Windows with Cygwin

From: Eric Hanchrow <[email-masked]>
Date: Wed, 17 Sep 2008 13:14:48 -0700

I visited a file that was in a git working tree, and expected to see
"Git-master" in the mode line, but didn't.

Some investigation revealed that the file I visited was owned by
"Administrator", whereas the ".git" directory was owned by "erich".
(It's not clear why these two related files have different owners, but
this happens rather a lot when I use Cygwin).  Anyway, the code in
vc-find-root explicitly stops looking for a .git directory once it's
determined that some parent of the file in question has a different
owner.  This heuristic probably works fine on every other platform, but
perhaps it should be disabled on Windows, since the situation it's
trying to prevent -- namely, "looking in things like /net and /afs" --
is unlikely to occur on that platform anyway.

If Emacs crashed, and you have the Emacs process in the gdb debugger,
please include the output from the following gdb commands:
    `bt full' and `xbacktrace'.
If you would like to further debug the crash, please read the file
c:/cygwin/usr/local/src/emacs-via-git/etc/DEBUG for instructions.

In GNU Emacs 23.0.60.1 (i386-mingw-nt6.0.6001)
 of 2008-09-17 on ERICH-DEV
Windowing system distributor `Microsoft Corp.', version 6.0.6001
configured using `configure --with-gcc (3.4)'

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: nil
  value of $XMODIFIERS: nil
  locale-coding-system: cp1252
  default-enable-multibyte-characters: t

Major mode: Emacs-Lisp

Minor modes in effect:
  eldoc-mode: t
  erc-autojoin-mode: t
  erc-match-mode: t
  erc-log-mode: t
  erc-services-mode: t
  erc-networks-mode: t
  desktop-save-mode: t
  recentf-mode: t
  display-time-mode: t
  global-auto-revert-mode: t
  diff-auto-refine-mode: t
  shell-dirtrack-mode: t
  iswitchb-mode: t
  tooltip-mode: t
  mouse-wheel-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

Recent input:
SPC SPC SPC SPC SPC SPC SPC SPC SPC SPC SPC SPC SPC 
SPC SPC SPC SPC SPC SPC SPC SPC SPC SPC SPC SPC SPC 
SPC SPC SPC SPC SPC SPC SPC SPC SPC SPC SPC SPC SPC 
SPC SPC SPC SPC SPC SPC SPC SPC SPC SPC c c c c c c 
C-x o C-M-x C-x b s h e <return> l l SPC . SPC d e 
<tab> m <tab> C-a C-f C-f C-SPC - d C-b C-b SPC C-f 
C-f C-f C-k c : / SPC c : / d e <tab> m <tab> SPC c 
: / d e <tab> m <tab> i <tab> <return> m v SPC c : 
/ d e <tab> m <tab> SPC ~ / <return> c d <return> c 
v h o <backspace> <backspace> <backspace> <backspace> 
l l SPC - d <return> l l SPC - d SPC d e m o <return> 
c h o w n SPC - R SPC e r i c h SPC d e m o <return> 
C-x b . t x <return> C-x C-v C-a C-d C-d ~ <return> 
C-x v l C-x 1 q M-x M-p M-p M-p <return> C-x v l q 
C-x 0 C-x b i n i <return> C-x b w i n <return> C-s 
c y g C-w - m C-a C-n C-e C-n C-a C-M-n C-x C-e C-x 
b C-s <return> C-x d / u s r / l o c <tab> s r <tab> 
<return> q C-c C-a C-x b . e l C-s C-s C-s <return> 
C-s C-w C-w C-w C-s C-s C-s C-s M-b C-x F <return> 
C-x n d C-x C-n w C-x C-u C-g C-x u C-x n w M-x r e 
p o r t - e m <tab> <return>

Recent messages:
Menu-bar mode disabled.  Use M-x menu-bar-mode to make the menu bar appear.
Mark saved where search started
Activating cygwin-mount ... done
"Activating cygwin-mount ... done"
Mark saved where search started
Mark set
Type y, n, ! or SPC (the space bar): 
Quit
Undo!
Scanning for dabbrevs...100%

-- 
I don't care where he was born.  He's one of us, in all the ways
that matter most.  (Even, perhaps, in the groping.)
        -- Steven Den Beste, on Arnold Schwarzenegger