Show More
@@ -111,6 +111,7 b' class httppeer(wireproto.wirepeer):' | |||||
111 | self.ui.debug("sending %s command\n" % cmd) |
|
111 | self.ui.debug("sending %s command\n" % cmd) | |
112 | q = [('cmd', cmd)] |
|
112 | q = [('cmd', cmd)] | |
113 | headersize = 0 |
|
113 | headersize = 0 | |
|
114 | varyheaders = [] | |||
114 | # Important: don't use self.capable() here or else you end up |
|
115 | # Important: don't use self.capable() here or else you end up | |
115 | # with infinite recursion when trying to look up capabilities |
|
116 | # with infinite recursion when trying to look up capabilities | |
116 | # for the first time. |
|
117 | # for the first time. | |
@@ -137,13 +138,11 b' class httppeer(wireproto.wirepeer):' | |||||
137 | headerfmt = 'X-HgArg-%s' |
|
138 | headerfmt = 'X-HgArg-%s' | |
138 | contentlen = headersize - len(headerfmt % '000' + ': \r\n') |
|
139 | contentlen = headersize - len(headerfmt % '000' + ': \r\n') | |
139 | headernum = 0 |
|
140 | headernum = 0 | |
140 | varyheaders = [] |
|
|||
141 | for i in xrange(0, len(encargs), contentlen): |
|
141 | for i in xrange(0, len(encargs), contentlen): | |
142 | headernum += 1 |
|
142 | headernum += 1 | |
143 | header = headerfmt % str(headernum) |
|
143 | header = headerfmt % str(headernum) | |
144 | headers[header] = encargs[i:i + contentlen] |
|
144 | headers[header] = encargs[i:i + contentlen] | |
145 | varyheaders.append(header) |
|
145 | varyheaders.append(header) | |
146 | headers['Vary'] = ','.join(varyheaders) |
|
|||
147 | else: |
|
146 | else: | |
148 | q += sorted(args.items()) |
|
147 | q += sorted(args.items()) | |
149 | qs = '?%s' % urlreq.urlencode(q) |
|
148 | qs = '?%s' % urlreq.urlencode(q) | |
@@ -158,7 +157,10 b' class httppeer(wireproto.wirepeer):' | |||||
158 | headers['X-HgHttp2'] = '1' |
|
157 | headers['X-HgHttp2'] = '1' | |
159 | if data is not None and 'Content-Type' not in headers: |
|
158 | if data is not None and 'Content-Type' not in headers: | |
160 | headers['Content-Type'] = 'application/mercurial-0.1' |
|
159 | headers['Content-Type'] = 'application/mercurial-0.1' | |
|
160 | ||||
|
161 | headers['Vary'] = ','.join(varyheaders) | |||
161 | req = self.requestbuilder(cu, data, headers) |
|
162 | req = self.requestbuilder(cu, data, headers) | |
|
163 | ||||
162 | if data is not None: |
|
164 | if data is not None: | |
163 | self.ui.debug("sending %s bytes\n" % size) |
|
165 | self.ui.debug("sending %s bytes\n" % size) | |
164 | req.add_unredirected_header('Content-Length', '%d' % size) |
|
166 | req.add_unredirected_header('Content-Length', '%d' % size) |
General Comments 0
You need to be logged in to leave comments.
Login now