diff --git a/docs/changes.rst b/docs/changes.rst index 3925a1c4..6fca3cbf 100644 --- a/docs/changes.rst +++ b/docs/changes.rst @@ -13,7 +13,9 @@ v0.10.0 (in development) **Bug fixes** -- None yet +- :issue:`256`: Fix crash caused by non-ASCII characters in paths returned from + ``glib``. The bug can be worked around by overriding the settings that + includes offending `$XDG_` variables. v0.9.0 (2012-11-21) diff --git a/mopidy/utils/path.py b/mopidy/utils/path.py index 0c06eedd..a9216764 100644 --- a/mopidy/utils/path.py +++ b/mopidy/utils/path.py @@ -17,9 +17,10 @@ DATA_PATH = os.path.join(str(glib.get_user_data_dir()), 'mopidy') SETTINGS_PATH = os.path.join(str(glib.get_user_config_dir()), 'mopidy') SETTINGS_FILE = os.path.join(SETTINGS_PATH, 'settings.py') XDG_DIRS = { - 'XDG_CACHE_DIR': glib.get_user_cache_dir(), - 'XDG_DATA_DIR': glib.get_user_data_dir(), - 'XDG_MUSIC_DIR': glib.get_user_special_dir(glib.USER_DIRECTORY_MUSIC), + 'XDG_CACHE_DIR': glib.get_user_cache_dir().decode('utf-8'), + 'XDG_DATA_DIR': glib.get_user_data_dir().decode('utf-8'), + 'XDG_MUSIC_DIR': ( + glib.get_user_special_dir(glib.USER_DIRECTORY_MUSIC).decode('utf-8')), }