summaryrefslogtreecommitdiffstats
path: root/pym/portage/util/_dyn_libs
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2011-08-24 20:29:04 -0700
committerZac Medico <zmedico@gentoo.org>2011-08-24 20:29:04 -0700
commit2f550d8eb3183b76de7b33df2e9c649cc9b29dda (patch)
tree01f82062847fb32b4cf9dc47b9e9b4f0e7278914 /pym/portage/util/_dyn_libs
parent148fc6a73f3fa3b53039ee3292e222015e96bc79 (diff)
downloadportage-2f550d8eb3183b76de7b33df2e9c649cc9b29dda.tar.gz
portage-2f550d8eb3183b76de7b33df2e9c649cc9b29dda.tar.bz2
portage-2f550d8eb3183b76de7b33df2e9c649cc9b29dda.zip
python3.2 fixes: ResourceWarning: unclosed file
Diffstat (limited to 'pym/portage/util/_dyn_libs')
-rw-r--r--pym/portage/util/_dyn_libs/PreservedLibsRegistry.py10
1 files changed, 7 insertions, 3 deletions
diff --git a/pym/portage/util/_dyn_libs/PreservedLibsRegistry.py b/pym/portage/util/_dyn_libs/PreservedLibsRegistry.py
index 602cf870a..b916051a1 100644
--- a/pym/portage/util/_dyn_libs/PreservedLibsRegistry.py
+++ b/pym/portage/util/_dyn_libs/PreservedLibsRegistry.py
@@ -55,10 +55,11 @@ class PreservedLibsRegistry(object):
def load(self):
""" Reload the registry data from file """
self._data = None
+ f = None
try:
- self._data = pickle.load(
- open(_unicode_encode(self._filename,
- encoding=_encodings['fs'], errors='strict'), 'rb'))
+ f = open(_unicode_encode(self._filename,
+ encoding=_encodings['fs'], errors='strict'), 'rb')
+ self._data = pickle.load(f)
except (ValueError, pickle.UnpicklingError) as e:
writemsg_level(_("!!! Error loading '%s': %s\n") % \
(self._filename, e), level=logging.ERROR, noiselevel=-1)
@@ -69,6 +70,9 @@ class PreservedLibsRegistry(object):
raise PermissionDenied(self._filename)
else:
raise
+ finally:
+ if f is not None:
+ f.close()
if self._data is None:
self._data = {}
self._data_orig = self._data.copy()