Fix KeyError with unknown options

This commit is contained in:
Florian Bruhin 2016-08-03 11:58:42 +02:00
parent 11e7f7c334
commit 43c81cc3a4

View File

@ -775,11 +775,16 @@ class ConfigManager(QObject):
if validate: if validate:
interpolated = self._interpolation.before_get( interpolated = self._interpolation.before_get(
self, sectname, optname, value, mapping) self, sectname, optname, value, mapping)
allowed_backends = sect.values[optname].backends try:
used_backend = usertypes.arg2backend[objreg.get('args').backend] allowed_backends = sect.values[optname].backends
if (allowed_backends is not None and except KeyError:
used_backend not in allowed_backends): # Will be handled later in .setv()
raise configexc.BackendError(used_backend) pass
else:
backend = usertypes.arg2backend[objreg.get('args').backend]
if (allowed_backends is not None and
backend not in allowed_backends):
raise configexc.BackendError(backend)
else: else:
interpolated = None interpolated = None