Better OSError handling for YAML parser

This commit is contained in:
Otto Winter 2018-06-05 23:18:56 +02:00
parent 923a5990c7
commit 11d55fec4f
No known key found for this signature in database
GPG Key ID: DB66C0BE6013F97E

View File

@ -48,8 +48,9 @@ def load_yaml(fname):
with codecs.open(fname, encoding='utf-8') as conf_file: with codecs.open(fname, encoding='utf-8') as conf_file:
return yaml.load(conf_file, Loader=SafeLineLoader) or OrderedDict() return yaml.load(conf_file, Loader=SafeLineLoader) or OrderedDict()
except yaml.YAMLError as exc: except yaml.YAMLError as exc:
_LOGGER.error(exc)
raise ESPHomeYAMLError(exc) raise ESPHomeYAMLError(exc)
except IOError as exc:
raise ESPHomeYAMLError(u"Error accessing file {}: {}".format(fname, exc))
except UnicodeDecodeError as exc: except UnicodeDecodeError as exc:
_LOGGER.error(u"Unable to read file %s: %s", fname, exc) _LOGGER.error(u"Unable to read file %s: %s", fname, exc)
raise ESPHomeYAMLError(exc) raise ESPHomeYAMLError(exc)