# HG changeset patch # User Gregory Szorc # Date 1520556212 28800 # Node ID 5a3c83412f79f690bc08e1b6404f9228c1b7d126 # Parent 158d4ecc03c80951b56af7d734f0214d10352c65 wireprotoserver: remove broken optimization for non-httplib client There was an experimental non-httplib client in core for several years. It was removed a week or so ago. We kept the optimization for this client in the server code. I'm not sure if that was intended or not. But it doesn't matter: the code was wrong. Because the code was accessing a WSGI environment dict, it needed to access the HTTP_X_HGHTTP2 key to actually read the HTTP header. So the code deleted by this commit wasn't actually doing anything meaningful. Doh. Differential Revision: https://phab.mercurial-scm.org/D2741 diff -r 158d4ecc03c8 -r 5a3c83412f79 mercurial/wireprotoserver.py --- a/mercurial/wireprotoserver.py Thu Mar 08 15:58:52 2018 -0800 +++ b/mercurial/wireprotoserver.py Thu Mar 08 16:43:32 2018 -0800 @@ -328,10 +328,7 @@ if (wsgireq.env[r'REQUEST_METHOD'] == r'POST' and # But not if Expect: 100-continue is being used. (wsgireq.env.get('HTTP_EXPECT', - '').lower() != '100-continue') or - # Or the non-httplib HTTP library is being advertised by - # the client. - wsgireq.env.get('X-HgHttp2', '')): + '').lower() != '100-continue')): wsgireq.drain() else: wsgireq.headers.append((r'Connection', r'Close'))