diff options
author | Zac Medico <zmedico@gentoo.org> | 2011-08-24 20:29:04 -0700 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2011-08-24 20:29:04 -0700 |
commit | 2f550d8eb3183b76de7b33df2e9c649cc9b29dda (patch) | |
tree | 01f82062847fb32b4cf9dc47b9e9b4f0e7278914 /pym/portage/util/_dyn_libs | |
parent | 148fc6a73f3fa3b53039ee3292e222015e96bc79 (diff) | |
download | portage-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.py | 10 |
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() |