Catch socket.error before IOError
[youtube-dl] / youtube_dl / YoutubeDL.py
index de2b133e020e59d0663ea549a5e8b2ce715a7ef0..d999099fee72674dc91147d95a9b7526a4bb2e2e 100644 (file)
@@ -544,11 +544,11 @@ class YoutubeDL(object):
             else:
                 try:
                     success = self.fd._do_download(filename, info_dict)
-                except (OSError, IOError) as err:
-                    raise UnavailableVideoError(err)
                 except (compat_urllib_error.URLError, compat_http_client.HTTPException, socket.error) as err:
                     self.report_error(u'unable to download video data: %s' % str(err))
                     return
+                except (OSError, IOError) as err:
+                    raise UnavailableVideoError(err)
                 except (ContentTooShortError, ) as err:
                     self.report_error(u'content too short (expected %s bytes and served %s)' % (err.expected, err.downloaded))
                     return