tests/test-hgrc
author Colin McMillen <mcmillen@cs.cmu.edu>
Sun, 30 Apr 2006 22:43:41 +0200
changeset 2168 dd4ec4576cc8
parent 1473 7d66ce9895fa
child 4659 7a7d4937272b
permissions -rwxr-xr-x
Proper check to see if zip dest needs to be wrapped in tellable From hgweb, calling archival.zipit fails with the error message "Illegal seek". This happens because sys.stdout.tell() throws an exception: Traceback (most recent call last): File "/usr/lib/python2.4/site-packages/mercurial/archival.py", line 99, in addfile self.z.writestr(i, data) File "/usr/lib/python2.4/zipfile.py", line 468, in writestr zinfo.header_offset = self.fp.tell() # Start of header bytes Checking whether hasattr(dest, 'tell') is insufficient, because sys.stdout has a tell() method; you just can't call it. This patch instead determines whether a fileobj is tellable by trying to tell(), wrapping the fileobj if an exception is generated.

#!/bin/sh

mkdir t
cd t
hg init
echo "invalid" > .hg/hgrc
hg status 2>&1 |sed -e "s:/.*\(/t/.*\):...\1:"