equal
deleted
inserted
replaced
140 argvalue = decodevaluefromheaders(self._req, r'X-HgArg') |
140 argvalue = decodevaluefromheaders(self._req, r'X-HgArg') |
141 args.update(urlreq.parseqs(argvalue, keep_blank_values=True)) |
141 args.update(urlreq.parseqs(argvalue, keep_blank_values=True)) |
142 return args |
142 return args |
143 |
143 |
144 def forwardpayload(self, fp): |
144 def forwardpayload(self, fp): |
145 length = int(self._req.env[r'CONTENT_LENGTH']) |
145 if r'HTTP_CONTENT_LENGTH' in self._req.env: |
|
146 length = int(self._req.env[r'HTTP_CONTENT_LENGTH']) |
|
147 else: |
|
148 length = int(self._req.env[r'CONTENT_LENGTH']) |
146 # If httppostargs is used, we need to read Content-Length |
149 # If httppostargs is used, we need to read Content-Length |
147 # minus the amount that was consumed by args. |
150 # minus the amount that was consumed by args. |
148 length -= int(self._req.env.get(r'HTTP_X_HGARGS_POST', 0)) |
151 length -= int(self._req.env.get(r'HTTP_X_HGARGS_POST', 0)) |
149 for s in util.filechunkiter(self._req, limit=length): |
152 for s in util.filechunkiter(self._req, limit=length): |
150 fp.write(s) |
153 fp.write(s) |