[PATCH 4 of 4] dirstate: walk returns None for files under symlink directory

Kevin Bullock kbullock+mercurial at ringworld.org
Tue Feb 5 10:24:02 CST 2013


On Feb 4, 2013, at 9:20 PM, Durham Goode wrote:

> # HG changeset patch
> # User Durham Goode <durham at fb.com>
> # Date 1360016835 28800
> # Node ID 6d9b67fed529efcff1f210abd694c551d85cdea5
> # Parent  1c47ffd98e0ee0ddccfe339e2a28cf1841be52a4
> dirstate: walk returns None for files under symlink directory

-ETOOBIG

This patch is doing too much, and you've got a function duplicated exactly in two modules.

> Previously dirstate.walk would return a stat object for files in the dmap
> that were under a symlink directory.  Now it will return None (when the unknown
> parameter is True) to indicate that they are no longer considered part of the
> repository.
> 
> In a situation like this:
>  mkdir foo && touch foo/a && hg commit -Am "a"
>  mv foo bar
>  ln -s bar foo
> 
> 'hg status' will now show '! foo/a', whereas before it incorrectly considered
> 'foo/a' to be unchanged.

Shouldn't we land a minimal fix for this on stable?

pacem in terris / мир / शान्ति / ‎‫سَلاَم‬ / 平和
Kevin R. Bullock



More information about the Mercurial-devel mailing list