[xattr] Write bytestrings, not characters

This commit is contained in:
Philipp Hagemeister 2014-01-07 06:11:21 +01:00
parent 496c19234c
commit 42cc71e80b

View File

@ -5,6 +5,7 @@
from .common import PostProcessor from .common import PostProcessor
from ..utils import ( from ..utils import (
hyphenate_date, hyphenate_date,
preferredencoding,
) )
@ -70,7 +71,7 @@ def write_xattr(path, key, value):
e = OSError(potential_errno, potential_errorstr) e = OSError(potential_errno, potential_errorstr)
e.__cause__ = None e.__cause__ = None
raise e raise e
raise # Reraise unhandled error raise # Reraise unhandled error
else: else:
# On Unix, and can't find pyxattr, setfattr, or xattr. # On Unix, and can't find pyxattr, setfattr, or xattr.
@ -113,7 +114,8 @@ def write_xattr(path, key, value):
if infoname == "upload_date": if infoname == "upload_date":
value = hyphenate_date(value) value = hyphenate_date(value)
write_xattr(filename, xattrname, value) byte_value = value.encode(preferredencoding())
write_xattr(filename, xattrname, byte_value)
return True, info return True, info