wireproto: workaround for yield inside try/finally incompatible with python2.4
authorThomas Arendsen Hein <thomas@intevation.de>
Tue, 18 Sep 2012 17:00:58 +0200
changeset 17603 a7fa5bd1c914
parent 17596 2eac9641496d
child 17604 bf9894889d82
wireproto: workaround for yield inside try/finally incompatible with python2.4
mercurial/wireproto.py
--- a/mercurial/wireproto.py	Tue Sep 18 15:36:58 2012 +0200
+++ b/mercurial/wireproto.py	Tue Sep 18 17:00:58 2012 +0200
@@ -567,8 +567,11 @@
                 else:
                     for chunk in util.filechunkiter(sopener(name), limit=size):
                         yield chunk
-        finally:
+        # replace with "finally:" when support for python 2.4 has been dropped
+        except Exception:
             sopener.mustaudit = oldaudit
+            raise
+        sopener.mustaudit = oldaudit
 
     return streamres(streamer(repo, entries, total_bytes))