util.copyfiles: don't try os_link() again if it failed before
If the os_link() call on the first file in the directory fails [1],
we switch mode to using shutil.copy() for all remaining files.
[1] happens for example on Windows for every file when cloning from a UNC
path without specifying --pull.
#!/bin/sh
"$TESTDIR/hghave" execbit || exit 80
hg init
echo a > a
hg ci -Am'not executable'
chmod +x a
hg ci -m'executable'
hg id
echo '% make sure we notice the change of mode if the cached size == -1'
hg rm a
hg revert -r 0 a
hg debugstate
hg st
hg up 0
hg id
test -x a && echo executable -- eek || echo not executable -- whew