Ignore any errors from calling get_long_path_name

Fixes #1902257 [failed import on newest release](https://bugs.launchpad.net/calibre/+bug/1902257)
This commit is contained in:
Kovid Goyal 2020-10-30 21:59:17 +05:30
parent 9be75ea01d
commit 02edfdfa86
No known key found for this signature in database
GPG Key ID: 06BC317B515ACE7C

View File

@ -9,6 +9,7 @@ import subprocess
import sys
from threading import Thread
from uuid import uuid4
from contextlib import suppress
from polyglot.builtins import filter, string_or_bytes, unicode_type
@ -227,11 +228,13 @@ def run_file_dialog(
def fix_path(x):
u = os.path.abspath(x.decode('utf-8'))
try:
return get_long_path_name(u)
except FileNotFoundError:
base, fn = os.path.split(u)
return os.path.join(get_long_path_name(base), fn)
with suppress(Exception):
try:
return get_long_path_name(u)
except FileNotFoundError:
base, fn = os.path.split(u)
return os.path.join(get_long_path_name(base), fn)
return u
ans = tuple(map(fix_path, parts[1:]))
return ans