Mercurial > hg
changeset 23394:b5e2128ce9e6
merge with stable
author | Matt Mackall <mpm@selenic.com> |
---|---|
date | Tue, 25 Nov 2014 17:30:05 -0600 |
parents | c834c0194dbb (current diff) 7f8d27e1f862 (diff) |
children | d9ebb475eede |
files | hgext/largefiles/reposetup.py tests/test-largefiles-update.t |
diffstat | 2 files changed, 28 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/hgext/largefiles/reposetup.py Tue Nov 25 02:31:52 2014 -0600 +++ b/hgext/largefiles/reposetup.py Tue Nov 25 17:30:05 2014 -0600 @@ -170,6 +170,7 @@ else: tocheck = unsure + modified + added + clean modified, added, clean = [], [], [] + checkexec = self.dirstate._checkexec for lfile in tocheck: standin = lfutil.standin(lfile) @@ -177,7 +178,8 @@ abslfile = self.wjoin(lfile) if ((ctx1[standin].data().strip() != lfutil.hashfile(abslfile)) or - (('x' in ctx1.flags(standin)) != + (checkexec and + ('x' in ctx1.flags(standin)) != bool(lfutil.getexecutable(abslfile)))): modified.append(lfile) elif listclean:
--- a/tests/test-largefiles-update.t Tue Nov 25 02:31:52 2014 -0600 +++ b/tests/test-largefiles-update.t Tue Nov 25 17:30:05 2014 -0600 @@ -608,6 +608,31 @@ $ hg status -A --rev '.^1' large2 M large2 +#else + +Test that "hg status" against revisions other than parent ignores exec +bit correctly on the platform being unaware of it. + + $ hg update -q -C 4 + + $ cat > exec-bit.patch <<EOF + > # HG changeset patch + > # User test + > # Date 0 0 + > # Thu Jan 01 00:00:00 1970 +0000 + > # Node ID be1b433a65b12b27b5519d92213e14f7e1769b90 + > # Parent 07d6153b5c04313efb75deec9ba577de7faeb727 + > chmod +x large2 + > + > diff --git a/.hglf/large2 b/.hglf/large2 + > old mode 100644 + > new mode 100755 + > EOF + $ hg import --exact --bypass exec-bit.patch + applying exec-bit.patch + $ hg status -A --rev tip large2 + C large2 + #endif $ cd ..