Skip to content

Commit

Permalink
[downloader/http] Use write_xattr function for --xattr-set-filesize
Browse files Browse the repository at this point in the history
  • Loading branch information
Yen Chi Hsuan committed Oct 1, 2016
1 parent a1001f4 commit d7753d1
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 9 deletions.
6 changes: 0 additions & 6 deletions youtube_dl/__init__.py
Expand Up @@ -283,12 +283,6 @@ def parse_retries(retries):
'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)
Expand Down
8 changes: 5 additions & 3 deletions youtube_dl/downloader/http.py
Expand Up @@ -13,6 +13,9 @@
encodeFilename,
sanitize_open,
sanitized_Request,
write_xattr,
XAttrMetadataError,
XAttrUnavailableError,
)


Expand Down Expand Up @@ -179,9 +182,8 @@ def real_download(self, filename, info_dict):

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:
Expand Down

0 comments on commit d7753d1

Please sign in to comment.