Various cleanups and added custom cycler.
--HG--
branch : trunk
diff --git a/jinja2/bccache.py b/jinja2/bccache.py
index e11bad5..2c57616 100644
--- a/jinja2/bccache.py
+++ b/jinja2/bccache.py
@@ -24,6 +24,7 @@
from hashlib import sha1
except ImportError:
from sha import new as sha1
+from jinja2.utils import open_if_exists
bc_version = 1
@@ -193,17 +194,15 @@
return path.join(self.directory, self.pattern % bucket.key)
def load_bytecode(self, bucket):
- filename = self._get_cache_filename(bucket)
- if path.exists(filename):
- f = file(filename, 'rb')
+ f = open_if_exists(self._get_cache_filename(bucket), 'rb')
+ if f is not None:
try:
bucket.load_bytecode(f)
finally:
f.close()
def dump_bytecode(self, bucket):
- filename = self._get_cache_filename(bucket)
- f = file(filename, 'wb')
+ f = file(self._get_cache_filename(bucket), 'wb')
try:
bucket.write_bytecode(f)
finally: