mirror of
				https://github.com/yt-dlp/yt-dlp.git
				synced 2025-10-31 06:35:12 +00:00 
			
		
		
		
	Use proper encoding on compat_str construction when necessary
This commit is contained in:
		| @@ -47,6 +47,7 @@ from .utils import ( | |||||||
|     DEFAULT_OUTTMPL, |     DEFAULT_OUTTMPL, | ||||||
|     determine_ext, |     determine_ext, | ||||||
|     DownloadError, |     DownloadError, | ||||||
|  |     encode_compat_str, | ||||||
|     encodeFilename, |     encodeFilename, | ||||||
|     error_to_str, |     error_to_str, | ||||||
|     ExtractorError, |     ExtractorError, | ||||||
| @@ -496,7 +497,7 @@ class YoutubeDL(object): | |||||||
|                     tb = '' |                     tb = '' | ||||||
|                     if hasattr(sys.exc_info()[1], 'exc_info') and sys.exc_info()[1].exc_info[0]: |                     if hasattr(sys.exc_info()[1], 'exc_info') and sys.exc_info()[1].exc_info[0]: | ||||||
|                         tb += ''.join(traceback.format_exception(*sys.exc_info()[1].exc_info)) |                         tb += ''.join(traceback.format_exception(*sys.exc_info()[1].exc_info)) | ||||||
|                     tb += compat_str(traceback.format_exc()) |                     tb += encode_compat_str(traceback.format_exc()) | ||||||
|                 else: |                 else: | ||||||
|                     tb_data = traceback.format_list(traceback.extract_stack()) |                     tb_data = traceback.format_list(traceback.extract_stack()) | ||||||
|                     tb = ''.join(tb_data) |                     tb = ''.join(tb_data) | ||||||
| @@ -682,7 +683,7 @@ class YoutubeDL(object): | |||||||
|                 raise |                 raise | ||||||
|             except Exception as e: |             except Exception as e: | ||||||
|                 if self.params.get('ignoreerrors', False): |                 if self.params.get('ignoreerrors', False): | ||||||
|                     self.report_error(error_to_str(e), tb=compat_str(traceback.format_exc())) |                     self.report_error(error_to_str(e), tb=encode_compat_str(traceback.format_exc())) | ||||||
|                     break |                     break | ||||||
|                 else: |                 else: | ||||||
|                     raise |                     raise | ||||||
|   | |||||||
| @@ -9,7 +9,7 @@ import subprocess | |||||||
| import sys | import sys | ||||||
| from zipimport import zipimporter | from zipimport import zipimporter | ||||||
|  |  | ||||||
| from .compat import compat_str | from .utils import encode_compat_str | ||||||
|  |  | ||||||
| from .version import __version__ | from .version import __version__ | ||||||
|  |  | ||||||
| @@ -61,7 +61,7 @@ def update_self(to_screen, verbose, opener): | |||||||
|         newversion = opener.open(VERSION_URL).read().decode('utf-8').strip() |         newversion = opener.open(VERSION_URL).read().decode('utf-8').strip() | ||||||
|     except Exception: |     except Exception: | ||||||
|         if verbose: |         if verbose: | ||||||
|             to_screen(compat_str(traceback.format_exc())) |             to_screen(encode_compat_str(traceback.format_exc())) | ||||||
|         to_screen('ERROR: can\'t find the current version. Please try again later.') |         to_screen('ERROR: can\'t find the current version. Please try again later.') | ||||||
|         return |         return | ||||||
|     if newversion == __version__: |     if newversion == __version__: | ||||||
| @@ -74,7 +74,7 @@ def update_self(to_screen, verbose, opener): | |||||||
|         versions_info = json.loads(versions_info) |         versions_info = json.loads(versions_info) | ||||||
|     except Exception: |     except Exception: | ||||||
|         if verbose: |         if verbose: | ||||||
|             to_screen(compat_str(traceback.format_exc())) |             to_screen(encode_compat_str(traceback.format_exc())) | ||||||
|         to_screen('ERROR: can\'t obtain versions info. Please try again later.') |         to_screen('ERROR: can\'t obtain versions info. Please try again later.') | ||||||
|         return |         return | ||||||
|     if 'signature' not in versions_info: |     if 'signature' not in versions_info: | ||||||
| @@ -123,7 +123,7 @@ def update_self(to_screen, verbose, opener): | |||||||
|             urlh.close() |             urlh.close() | ||||||
|         except (IOError, OSError): |         except (IOError, OSError): | ||||||
|             if verbose: |             if verbose: | ||||||
|                 to_screen(compat_str(traceback.format_exc())) |                 to_screen(encode_compat_str(traceback.format_exc())) | ||||||
|             to_screen('ERROR: unable to download latest version') |             to_screen('ERROR: unable to download latest version') | ||||||
|             return |             return | ||||||
|  |  | ||||||
| @@ -137,7 +137,7 @@ def update_self(to_screen, verbose, opener): | |||||||
|                 outf.write(newcontent) |                 outf.write(newcontent) | ||||||
|         except (IOError, OSError): |         except (IOError, OSError): | ||||||
|             if verbose: |             if verbose: | ||||||
|                 to_screen(compat_str(traceback.format_exc())) |                 to_screen(encode_compat_str(traceback.format_exc())) | ||||||
|             to_screen('ERROR: unable to write the new version') |             to_screen('ERROR: unable to write the new version') | ||||||
|             return |             return | ||||||
|  |  | ||||||
| @@ -157,7 +157,7 @@ start /b "" cmd /c del "%%~f0"&exit /b" | |||||||
|             return  # Do not show premature success messages |             return  # Do not show premature success messages | ||||||
|         except (IOError, OSError): |         except (IOError, OSError): | ||||||
|             if verbose: |             if verbose: | ||||||
|                 to_screen(compat_str(traceback.format_exc())) |                 to_screen(encode_compat_str(traceback.format_exc())) | ||||||
|             to_screen('ERROR: unable to overwrite current version') |             to_screen('ERROR: unable to overwrite current version') | ||||||
|             return |             return | ||||||
|  |  | ||||||
| @@ -169,7 +169,7 @@ start /b "" cmd /c del "%%~f0"&exit /b" | |||||||
|             urlh.close() |             urlh.close() | ||||||
|         except (IOError, OSError): |         except (IOError, OSError): | ||||||
|             if verbose: |             if verbose: | ||||||
|                 to_screen(compat_str(traceback.format_exc())) |                 to_screen(encode_compat_str(traceback.format_exc())) | ||||||
|             to_screen('ERROR: unable to download latest version') |             to_screen('ERROR: unable to download latest version') | ||||||
|             return |             return | ||||||
|  |  | ||||||
| @@ -183,7 +183,7 @@ start /b "" cmd /c del "%%~f0"&exit /b" | |||||||
|                 outf.write(newcontent) |                 outf.write(newcontent) | ||||||
|         except (IOError, OSError): |         except (IOError, OSError): | ||||||
|             if verbose: |             if verbose: | ||||||
|                 to_screen(compat_str(traceback.format_exc())) |                 to_screen(encode_compat_str(traceback.format_exc())) | ||||||
|             to_screen('ERROR: unable to overwrite current version') |             to_screen('ERROR: unable to overwrite current version') | ||||||
|             return |             return | ||||||
|  |  | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 Sergey M․
					Sergey M․