diff options
Diffstat (limited to 'django/utils/functional.py')
-rw-r--r-- | django/utils/functional.py | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/django/utils/functional.py b/django/utils/functional.py index 0da1fffa2b..146a2e8dc2 100644 --- a/django/utils/functional.py +++ b/django/utils/functional.py @@ -190,12 +190,9 @@ def keep_lazy(*resultclasses): @wraps(func) def wrapper(*args, **kwargs): - for arg in itertools.chain(args, kwargs.values()): - if isinstance(arg, Promise): - break - else: - return func(*args, **kwargs) - return lazy_func(*args, **kwargs) + if any(isinstance(arg, Promise) for arg in itertools.chain(args, kwargs.values())): + return lazy_func(*args, **kwargs) + return func(*args, **kwargs) return wrapper return decorator |