[Patch #988504] Fix HTTP error handling via a patch from John J. Lee
diff --git a/Lib/urllib2.py b/Lib/urllib2.py
index 69f5e04..a9c1c63 100644
--- a/Lib/urllib2.py
+++ b/Lib/urllib2.py
@@ -996,16 +996,12 @@
         except socket.error, err: # XXX what error?
             raise URLError(err)
 
-        if r.status in (200, 206):
-            # Pick apart the HTTPResponse object to get the addinfourl
-            # object initialized properly
-            resp = addinfourl(r.fp, r.msg, req.get_full_url())
-            resp.code = r.status
-            resp.msg = r.reason
-            return resp
-        else:
-            return self.parent.error("http", req, r.fp, r.status, r.msg,
-                                     r.msg.dict)
+        # Pick apart the HTTPResponse object to get the addinfourl
+        # object initialized properly
+        resp = addinfourl(r.fp, r.msg, req.get_full_url())
+        resp.code = r.status
+        resp.msg = r.reason
+        return resp
 
 
 class HTTPHandler(AbstractHTTPHandler):