mirror of
https://github.com/jellyfin/jellyfin-kodi.git
synced 2024-11-10 04:06:11 +00:00
Handle sys.getfilesystemencoding() returning None
This commit is contained in:
parent
5db16141cc
commit
b67f7a8c51
4 changed files with 20 additions and 7 deletions
|
@ -21,6 +21,7 @@ from .utils import create_id
|
||||||
from .utils import convert_to_local as Local
|
from .utils import convert_to_local as Local
|
||||||
from .utils import has_attribute
|
from .utils import has_attribute
|
||||||
from .utils import set_addon_mode
|
from .utils import set_addon_mode
|
||||||
|
from .utils import get_filesystem_encoding
|
||||||
|
|
||||||
from .wrapper import progress
|
from .wrapper import progress
|
||||||
from .wrapper import catch
|
from .wrapper import catch
|
||||||
|
|
|
@ -4,14 +4,14 @@ from __future__ import division, absolute_import, print_function, unicode_litera
|
||||||
##################################################################################################
|
##################################################################################################
|
||||||
|
|
||||||
import os
|
import os
|
||||||
import sys
|
|
||||||
import logging
|
import logging
|
||||||
import traceback
|
import traceback
|
||||||
|
|
||||||
from six import ensure_text
|
from six import ensure_text
|
||||||
|
|
||||||
from kodi_six import xbmc, xbmcaddon
|
from kodi_six import xbmc, xbmcaddon
|
||||||
|
|
||||||
import database
|
import database
|
||||||
|
from helper import get_filesystem_encoding
|
||||||
|
|
||||||
from . import settings
|
from . import settings
|
||||||
|
|
||||||
|
@ -90,7 +90,7 @@ class MyFormatter(logging.Formatter):
|
||||||
|
|
||||||
def format(self, record):
|
def format(self, record):
|
||||||
if record.pathname:
|
if record.pathname:
|
||||||
record.pathname = ensure_text(record.pathname, sys.getfilesystemencoding())
|
record.pathname = ensure_text(record.pathname, get_filesystem_encoding())
|
||||||
|
|
||||||
self._gen_rel_path(record)
|
self._gen_rel_path(record)
|
||||||
|
|
||||||
|
@ -104,7 +104,7 @@ class MyFormatter(logging.Formatter):
|
||||||
res = []
|
res = []
|
||||||
|
|
||||||
for o in traceback.format_exception(*exc_info):
|
for o in traceback.format_exception(*exc_info):
|
||||||
o = ensure_text(o, sys.getfilesystemencoding())
|
o = ensure_text(o, get_filesystem_encoding())
|
||||||
|
|
||||||
if o.startswith(' File "'):
|
if o.startswith(' File "'):
|
||||||
# If this split can't handle your file names, you should seriously consider renaming your files.
|
# If this split can't handle your file names, you should seriously consider renaming your files.
|
||||||
|
|
|
@ -6,6 +6,7 @@ from __future__ import division, absolute_import, print_function, unicode_litera
|
||||||
import binascii
|
import binascii
|
||||||
import json
|
import json
|
||||||
import os
|
import os
|
||||||
|
import sys
|
||||||
import re
|
import re
|
||||||
import unicodedata
|
import unicodedata
|
||||||
from uuid import uuid4
|
from uuid import uuid4
|
||||||
|
@ -488,3 +489,15 @@ class JsonDebugPrinter(object):
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
return json.dumps(self.data, indent=4)
|
return json.dumps(self.data, indent=4)
|
||||||
|
|
||||||
|
|
||||||
|
def get_filesystem_encoding():
|
||||||
|
enc = sys.getfilesystemencoding()
|
||||||
|
|
||||||
|
if not enc:
|
||||||
|
enc = sys.getdefaultencoding()
|
||||||
|
|
||||||
|
if not enc or enc == 'ascii':
|
||||||
|
enc = 'utf-8'
|
||||||
|
|
||||||
|
return enc
|
||||||
|
|
|
@ -5,11 +5,10 @@ from __future__ import division, absolute_import, print_function, unicode_litera
|
||||||
|
|
||||||
import json
|
import json
|
||||||
import os
|
import os
|
||||||
import sys
|
|
||||||
|
|
||||||
from six import iteritems, ensure_text
|
from six import iteritems, ensure_text
|
||||||
|
|
||||||
from helper import LazyLogger
|
from helper import LazyLogger, get_filesystem_encoding
|
||||||
|
|
||||||
##################################################################################################
|
##################################################################################################
|
||||||
|
|
||||||
|
@ -34,7 +33,7 @@ class Objects(object):
|
||||||
|
|
||||||
''' Load objects mapping.
|
''' Load objects mapping.
|
||||||
'''
|
'''
|
||||||
file_dir = os.path.dirname(ensure_text(__file__, sys.getfilesystemencoding()))
|
file_dir = os.path.dirname(ensure_text(__file__, get_filesystem_encoding()))
|
||||||
|
|
||||||
with open(os.path.join(file_dir, 'obj_map.json')) as infile:
|
with open(os.path.join(file_dir, 'obj_map.json')) as infile:
|
||||||
self.objects = json.load(infile)
|
self.objects = json.load(infile)
|
||||||
|
|
Loading…
Reference in a new issue