Use root directory for PIO Home when path contains non-ascii characters // Resolve #951 Resolve #952

This commit is contained in:
Ivan Kravets
2017-05-04 21:02:32 +03:00
parent f3f8374253
commit d37c6fcdce
2 changed files with 14 additions and 7 deletions

View File

@@ -220,15 +220,19 @@ def get_project_optional_dir(name, default=None):
def get_home_dir():
home_dir = get_project_optional_dir("home_dir",
join(expanduser("~"), ".platformio"))
win_home_dir = None
if "windows" in get_systype():
try:
home_dir.encode("utf8")
except UnicodeDecodeError:
home_dir = splitdrive(home_dir)[0] + "\\.platformio"
win_home_dir = splitdrive(home_dir)[0] + "\\.platformio"
if isdir(win_home_dir):
home_dir = win_home_dir
if not isdir(home_dir):
os.makedirs(home_dir)
try:
os.makedirs(home_dir)
except WindowsError:
if win_home_dir:
os.makedirs(win_home_dir)
home_dir = win_home_dir
assert isdir(home_dir)
return home_dir