improved thread safety of the LRUCache and fixed a bug in for loops
--HG--
branch : trunk
diff --git a/jinja2/utils.py b/jinja2/utils.py
index 313a53e..9d46639 100644
--- a/jinja2/utils.py
+++ b/jinja2/utils.py
@@ -469,13 +469,13 @@
"""Iterate over all values in the cache dict, ordered by
the most recent usage.
"""
- return reversed(self._queue)
+ return reversed(tuple(self._queue))
def __reversed__(self):
"""Iterate over the values in the cache dict, oldest items
coming first.
"""
- return iter(self._queue)
+ return iter(tuple(self._queue))
__copy__ = copy