mirror of
				https://github.com/yt-dlp/yt-dlp.git
				synced 2025-10-30 22:25:19 +00:00 
			
		
		
		
	[update] Use utils HTTPS handler (Fixes #4666)
On FreeBSD, the default HTTPS handler is missing certificates, so use our own.
This commit is contained in:
		| @@ -13,6 +13,7 @@ from .compat import ( | |||||||
|     compat_str, |     compat_str, | ||||||
|     compat_urllib_request, |     compat_urllib_request, | ||||||
| ) | ) | ||||||
|  | from .utils import make_HTTPS_handler | ||||||
| from .version import __version__ | from .version import __version__ | ||||||
|  |  | ||||||
|  |  | ||||||
| @@ -58,9 +59,12 @@ def update_self(to_screen, verbose): | |||||||
|         to_screen('It looks like you installed youtube-dl with a package manager, pip, setup.py or a tarball. Please use that to update.') |         to_screen('It looks like you installed youtube-dl with a package manager, pip, setup.py or a tarball. Please use that to update.') | ||||||
|         return |         return | ||||||
|  |  | ||||||
|  |     https_handler = make_HTTPS_handler(False) | ||||||
|  |     opener = compat_urllib_request.build_opener(https_handler) | ||||||
|  |  | ||||||
|     # Check if there is a new version |     # Check if there is a new version | ||||||
|     try: |     try: | ||||||
|         newversion = compat_urllib_request.urlopen(VERSION_URL).read().decode('utf-8').strip() |         newversion = opener.open(VERSION_URL).read().decode('utf-8').strip() | ||||||
|     except: |     except: | ||||||
|         if verbose: |         if verbose: | ||||||
|             to_screen(compat_str(traceback.format_exc())) |             to_screen(compat_str(traceback.format_exc())) | ||||||
| @@ -72,7 +76,7 @@ def update_self(to_screen, verbose): | |||||||
|  |  | ||||||
|     # Download and check versions info |     # Download and check versions info | ||||||
|     try: |     try: | ||||||
|         versions_info = compat_urllib_request.urlopen(JSON_URL).read().decode('utf-8') |         versions_info = opener.open(JSON_URL).read().decode('utf-8') | ||||||
|         versions_info = json.loads(versions_info) |         versions_info = json.loads(versions_info) | ||||||
|     except: |     except: | ||||||
|         if verbose: |         if verbose: | ||||||
| @@ -120,7 +124,7 @@ def update_self(to_screen, verbose): | |||||||
|             return |             return | ||||||
|  |  | ||||||
|         try: |         try: | ||||||
|             urlh = compat_urllib_request.urlopen(version['exe'][0]) |             urlh = opener.open(version['exe'][0]) | ||||||
|             newcontent = urlh.read() |             newcontent = urlh.read() | ||||||
|             urlh.close() |             urlh.close() | ||||||
|         except (IOError, OSError): |         except (IOError, OSError): | ||||||
| @@ -166,7 +170,7 @@ start /b "" cmd /c del "%%~f0"&exit /b" | |||||||
|     # Zip unix package |     # Zip unix package | ||||||
|     elif isinstance(globals().get('__loader__'), zipimporter): |     elif isinstance(globals().get('__loader__'), zipimporter): | ||||||
|         try: |         try: | ||||||
|             urlh = compat_urllib_request.urlopen(version['bin'][0]) |             urlh = opener.open(version['bin'][0]) | ||||||
|             newcontent = urlh.read() |             newcontent = urlh.read() | ||||||
|             urlh.close() |             urlh.close() | ||||||
|         except (IOError, OSError): |         except (IOError, OSError): | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 Philipp Hagemeister
					Philipp Hagemeister