From: 依云 Date: Tue, 28 Jul 2020 14:09:45 +0000 (+0800) Subject: curl_httpclient: set CURLOPT_PROXY to NULL if pycurl supports it X-Git-Tag: v6.1.0b1~15^2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=4a4cf9ce5867d29b4557a0b28eca7a56e77207de;p=thirdparty%2Ftornado.git curl_httpclient: set CURLOPT_PROXY to NULL if pycurl supports it This restores curl's default behaviour: use environment variables. This option was set to "" to disable proxy in 905a215a286041c986005859c378c0445c127cbb but curl uses environment variables by default. --- diff --git a/tornado/curl_httpclient.py b/tornado/curl_httpclient.py index 3ed82b765..161941842 100644 --- a/tornado/curl_httpclient.py +++ b/tornado/curl_httpclient.py @@ -406,7 +406,10 @@ class CurlAsyncHTTPClient(AsyncHTTPClient): "Unsupported proxy_auth_mode %s" % request.proxy_auth_mode ) else: - curl.setopt(pycurl.PROXY, "") + try: + curl.unsetopt(pycurl.PROXY) + except TypeError: # not supported, disable proxy + curl.setopt(pycurl.PROXY, "") curl.unsetopt(pycurl.PROXYUSERPWD) if request.validate_cert: curl.setopt(pycurl.SSL_VERIFYPEER, 1)