[core] Decode environment variables with filesystem encoding (Fixes #3854, Fixes #3217, Fixes #2918)

Introduces compat versions of os.getenv and os.path.expanduser
This commit is contained in:
Sergey M․ 2014-09-30 22:27:53 +07:00
parent e497a7f2ca
commit 4644ac5527
6 changed files with 76 additions and 13 deletions

View file

@ -9,6 +9,7 @@ import shutil
import traceback
from .utils import (
compat_expanduser,
write_json_file,
)
@ -22,7 +23,7 @@ class Cache(object):
if res is None:
cache_root = os.environ.get('XDG_CACHE_HOME', '~/.cache')
res = os.path.join(cache_root, 'youtube-dl')
return os.path.expanduser(res)
return compat_expanduser(res)
def _get_cache_fn(self, section, key, dtype):
assert re.match(r'^[a-zA-Z0-9_.-]+$', section), \