diff -r 090f2145df7d -r 3b6f18851d87 mercurial/sshserver.py --- a/mercurial/sshserver.py Fri Apr 18 18:07:34 2008 +0200 +++ b/mercurial/sshserver.py Wed Apr 23 11:40:33 2008 +0200 @@ -167,7 +167,7 @@ self.respond('') # write bundle data to temporary file because it can be big - + tempname = fp = None try: fd, tempname = tempfile.mkstemp(prefix='hg-unbundle-') fp = os.fdopen(fd, 'wb+') @@ -198,8 +198,10 @@ self.lock.release() self.lock = None finally: - fp.close() - os.unlink(tempname) + if fp is not None: + fp.close() + if tempname is not None: + os.unlink(tempname) def do_stream_out(self): streamclone.stream_out(self.repo, self.fout)