summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Lib/urllib/request.py9
1 files changed, 3 insertions, 6 deletions
diff --git a/Lib/urllib/request.py b/Lib/urllib/request.py
index ca643eb..d1acae1 100644
--- a/Lib/urllib/request.py
+++ b/Lib/urllib/request.py
@@ -1144,13 +1144,10 @@ class AbstractHTTPHandler(BaseHandler):
try:
h.request(req.get_method(), req.selector, req.data, headers)
except socket.error as err: # timeout error
+ h.close()
raise URLError(err)
- finally:
- try:
- r = h.getresponse() # an HTTPResponse instance
- except Exception as exp:
- h.close()
- raise exp
+ else:
+ r = h.getresponse()
r.url = req.get_full_url()
# This line replaces the .msg attribute of the HTTPResponse