Mercurial > hg-stable
changeset 9379:9d2e3508faf9
merge with crew-stable
author | Dirkjan Ochtman <dirkjan@ochtman.nl> |
---|---|
date | Sat, 22 Aug 2009 10:25:50 +0200 |
parents | 4481ba0957c5 (current diff) 1a7bcf58ba56 (diff) |
children | 642febca0e5d |
files | mercurial/dirstate.py |
diffstat | 3 files changed, 19 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/dirstate.py Sat Aug 22 01:37:28 2009 +0200 +++ b/mercurial/dirstate.py Sat Aug 22 10:25:50 2009 +0200 @@ -377,9 +377,9 @@ gran = int(self._ui.config('dirstate', 'granularity', 1)) except ValueError: gran = 1 - limit = sys.maxint if gran > 0: - limit = util.fstat(st).st_mtime - gran + hlimit = util.fstat(st).st_mtime + llimit = hlimit - gran cs = cStringIO.StringIO() copymap = self._copymap @@ -389,7 +389,8 @@ for f, e in self._map.iteritems(): if f in copymap: f = "%s\0%s" % (f, copymap[f]) - if e[3] > limit and e[0] == 'n': + if gran > 0 and e[0] == 'n' and llimit < e[3] <= hlimit: + # file was updated too recently, ignore stat data e = (e[0], 0, -1, -1) e = pack(_format, e[0], e[1], e[2], e[3], len(f)) write(e)
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/test-dirstate-future Sat Aug 22 10:25:50 2009 +0200 @@ -0,0 +1,13 @@ +#!/bin/sh + +hg init +echo a > a +hg add +hg ci -m1 + +# set mtime of a into the future +touch -t 202101011200 a + +# status must not set a's entry to unset (issue1790) +hg status +hg debugstate