# HG changeset patch # User Gregory Szorc # Date 1451777581 28800 # Node ID 2380889f8f52d7163390176bade70cfc117cf7ef # Parent 051b0dcec98b16ef0d88e4c019c16e9c1fd32a5e statichttprepo: implement __enter__ and __exit__ on httprangeheader httprangeheader behaves like a file object. Implement __enter__ and __exit__ so it can be used as a context manager, just like file objects. diff -r 051b0dcec98b -r 2380889f8f52 mercurial/statichttprepo.py --- a/mercurial/statichttprepo.py Sat Jan 02 16:41:57 2016 -0800 +++ b/mercurial/statichttprepo.py Sat Jan 02 15:33:01 2016 -0800 @@ -35,6 +35,13 @@ self.pos = 0 self.opener = opener self.name = url + + def __enter__(self): + return self + + def __exit__(self, exc_type, exc_value, traceback): + self.close() + def seek(self, pos): self.pos = pos def read(self, bytes=None):