[downloader/http] Use write_xattr function for --xattr-set-filesize
This commit is contained in:
		| @@ -283,12 +283,6 @@ def _real_main(argv=None): | ||||
|             'key': 'ExecAfterDownload', | ||||
|             'exec_cmd': opts.exec_cmd, | ||||
|         }) | ||||
|     if opts.xattr_set_filesize: | ||||
|         try: | ||||
|             import xattr | ||||
|             xattr  # Confuse flake8 | ||||
|         except ImportError: | ||||
|             parser.error('setting filesize xattr requested but python-xattr is not available') | ||||
|     external_downloader_args = None | ||||
|     if opts.external_downloader_args: | ||||
|         external_downloader_args = compat_shlex_split(opts.external_downloader_args) | ||||
|   | ||||
| @@ -13,6 +13,9 @@ from ..utils import ( | ||||
|     encodeFilename, | ||||
|     sanitize_open, | ||||
|     sanitized_Request, | ||||
|     write_xattr, | ||||
|     XAttrMetadataError, | ||||
|     XAttrUnavailableError, | ||||
| ) | ||||
|  | ||||
|  | ||||
| @@ -179,9 +182,8 @@ class HttpFD(FileDownloader): | ||||
|  | ||||
|                 if self.params.get('xattr_set_filesize', False) and data_len is not None: | ||||
|                     try: | ||||
|                         import xattr | ||||
|                         xattr.setxattr(tmpfilename, 'user.ytdl.filesize', str(data_len)) | ||||
|                     except(OSError, IOError, ImportError) as err: | ||||
|                         write_xattr(tmpfilename, 'user.ytdl.filesize', str(data_len)) | ||||
|                     except (XAttrUnavailableError, XAttrMetadataError) as err: | ||||
|                         self.report_error('unable to set filesize xattr: %s' % str(err)) | ||||
|  | ||||
|             try: | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Yen Chi Hsuan
					Yen Chi Hsuan