# HG changeset patch # User Christian Ebert # Date 1326631053 -3600 # Node ID 07893690c435ba63b72ec169e8ee3e8fa02ef383 # Parent f4c859293ed43b6348d4462493863dd0319807b4 keyword: update filectx.cmp monkeypatch to handle '\1\n' at start of file Analogous to 012b285cf643. diff -r f4c859293ed4 -r 07893690c435 hgext/keyword.py --- a/hgext/keyword.py Wed Jan 11 16:54:29 2012 +0000 +++ b/hgext/keyword.py Sun Jan 15 13:37:33 2012 +0100 @@ -680,7 +680,8 @@ # not make sense if (fctx._filerev is None and (self._repo._encodefilterpats or - kwt.match(fctx.path()) and not 'l' in fctx.flags()) or + kwt.match(fctx.path()) and not 'l' in fctx.flags() or + self.size() - 4 == fctx.size()) or self.size() == fctx.size()): return self._filelog.cmp(self._filenode, fctx.data()) return True diff -r f4c859293ed4 -r 07893690c435 tests/test-keyword.t --- a/tests/test-keyword.t Wed Jan 11 16:54:29 2012 +0000 +++ b/tests/test-keyword.t Sun Jan 15 13:37:33 2012 +0100 @@ -160,13 +160,31 @@ ignore $Id$ a -Test hook execution - $ diff a hooktest $ cp $HGRCPATH.nohooks $HGRCPATH $ rm hooktest +hg status of kw-ignored binary file starting with '\1\n' + + $ printf '\1\nfoo' > i + $ hg -q commit -Am metasep i + $ hg status + $ printf '\1\nbar' > i + $ hg status + M i + $ hg -q commit -m "modify metasep" i + $ hg status --rev 2:3 + M i + $ touch empty + $ hg -q commit -A -m "another file" + $ hg status -A --rev 3:4 i + C i + + $ hg -q strip -n 2 + +Test hook execution + bundle $ hg bundle --base null ../kw.hg