From 2fcfa79ffd4c59a2a7e22ee3095b66c0143e59a7 Mon Sep 17 00:00:00 2001 From: Roman Mogilatov Date: Wed, 8 Jun 2016 17:02:39 +0300 Subject: [PATCH] Fix singleton bugs related to thread-safety and checks for sequence types --- dependency_injector/providers/creational.py | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/dependency_injector/providers/creational.py b/dependency_injector/providers/creational.py index 40c72133..46f36211 100644 --- a/dependency_injector/providers/creational.py +++ b/dependency_injector/providers/creational.py @@ -212,12 +212,10 @@ class Singleton(Factory): :rtype: object """ - if self.instance: - return self.instance - with GLOBAL_LOCK: - self.instance = super(Singleton, self)._provide(*args, **kwargs) - + if self.instance is None: + self.instance = super(Singleton, self)._provide(*args, + **kwargs) return self.instance