Mercurial > hg > hg-git
changeset 81:6893f2a2cc66
made compatible with python 1.4
author | Scott Chacon <schacon@gmail.com> |
---|---|
date | Fri, 08 May 2009 11:33:28 -0700 |
parents | 71b07e16004f |
children | 64f451f2d50a |
files | dulwich/pack.py |
diffstat | 1 files changed, 8 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/dulwich/pack.py +++ b/dulwich/pack.py @@ -451,9 +451,12 @@ """Calculate the checksum for this pack.""" map, map_offset = simple_mmap(self._file, 0, self._size - 20) try: - return make_sha(map[map_offset:self._size-20]).digest() - finally: + r = make_sha(map[map_offset:self._size-20]).digest() map.close() + return r + except: + map.close() + raise def resolve_object(self, offset, type, obj, get_ref, get_offset=None): """Resolve an object, possibly resolving deltas when necessary. @@ -500,8 +503,10 @@ offset += total_size if progress: progress(i, num) - finally: map.close() + except: + map.close() + raise def iterentries(self, ext_resolve_ref=None, progress=None): found = {}