From 42cc71e80b9867574234eaa155171545192c0d10 Mon Sep 17 00:00:00 2001 From: Philipp Hagemeister Date: Tue, 7 Jan 2014 06:11:21 +0100 Subject: [PATCH] [xattr] Write bytestrings, not characters --- youtube_dl/postprocessor/xattrpp.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/youtube_dl/postprocessor/xattrpp.py b/youtube_dl/postprocessor/xattrpp.py index 440df93ec..5811d3568 100644 --- a/youtube_dl/postprocessor/xattrpp.py +++ b/youtube_dl/postprocessor/xattrpp.py @@ -5,6 +5,7 @@ import sys from .common import PostProcessor from ..utils import ( hyphenate_date, + preferredencoding, ) @@ -70,7 +71,7 @@ class XAttrMetadataPP(PostProcessor): e = OSError(potential_errno, potential_errorstr) e.__cause__ = None raise e - raise # Reraise unhandled error + raise # Reraise unhandled error else: # On Unix, and can't find pyxattr, setfattr, or xattr. @@ -113,7 +114,8 @@ class XAttrMetadataPP(PostProcessor): if infoname == "upload_date": value = hyphenate_date(value) - write_xattr(filename, xattrname, value) + byte_value = value.encode(preferredencoding()) + write_xattr(filename, xattrname, byte_value) return True, info