--- a/mercurial/wireprotoserver.py Thu Mar 08 16:38:01 2018 -0800
+++ b/mercurial/wireprotoserver.py Sat Mar 10 10:45:12 2018 -0800
@@ -91,10 +91,9 @@
return args
def forwardpayload(self, fp):
- if b'Content-Length' in self._req.headers:
- length = int(self._req.headers[b'Content-Length'])
- else:
- length = int(self._wsgireq.env[r'CONTENT_LENGTH'])
+ # Existing clients *always* send Content-Length.
+ length = int(self._req.headers[b'Content-Length'])
+
# If httppostargs is used, we need to read Content-Length
# minus the amount that was consumed by args.
length -= int(self._req.headers.get(b'X-HgArgs-Post', 0))