From dd270ab87b87239fe4d42c0f851a5d9472ce75b9 Mon Sep 17 00:00:00 2001 From: Thomas Adamcik Date: Wed, 8 Apr 2015 00:36:03 +0200 Subject: [PATCH] models: Stop using globals to get model names in JSON decoding. --- mopidy/models.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/mopidy/models.py b/mopidy/models.py index af409570..c12da719 100644 --- a/mopidy/models.py +++ b/mopidy/models.py @@ -282,13 +282,13 @@ def model_json_decoder(dct): """ if '__model__' in dct: + models = {c.__name__: c for c in ImmutableObject.__subclasses__()} model_name = dct.pop('__model__') - cls = globals().get(model_name, None) - if issubclass(cls, ImmutableObject): + if model_name in models: kwargs = {} for key, value in dct.items(): kwargs[key] = value - return cls(**kwargs) + return models[model_name](**kwargs) return dct