url: use `iter(callable, sentinel)` instead of while True
authorAugie Fackler <augie@google.com>
Fri, 05 Aug 2016 14:00:39 -0400
changeset 29729 44ea12756fef
parent 29728 1a29db79a98d
child 29730 4d23cd6e2219
url: use `iter(callable, sentinel)` instead of while True This is functionally equivalent, but is a little more concise.
mercurial/url.py
--- a/mercurial/url.py	Fri Aug 05 14:00:30 2016 -0400
+++ b/mercurial/url.py	Fri Aug 05 14:00:39 2016 -0400
@@ -208,18 +208,14 @@
         version, status, reason = res._read_status()
         if status != httplib.CONTINUE:
             break
-        while True:
-            skip = res.fp.readline().strip()
-            if not skip:
-                break
+        # skip lines that are all whitespace
+        list(iter(lambda: res.fp.readline().strip(), ''))
     res.status = status
     res.reason = reason.strip()
 
     if res.status == 200:
-        while True:
-            line = res.fp.readline()
-            if line == '\r\n':
-                break
+        # skip lines until we find a blank line
+        list(iter(res.fp.readline, '\r\n'))
         return True
 
     if version == 'HTTP/1.0':