diff options
Diffstat (limited to 'pym/portage/repository/config.py')
-rw-r--r-- | pym/portage/repository/config.py | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/pym/portage/repository/config.py b/pym/portage/repository/config.py index ac9793e4a..a12bd7bc5 100644 --- a/pym/portage/repository/config.py +++ b/pym/portage/repository/config.py @@ -137,14 +137,19 @@ class RepoConfig(object): Returns repo_name, missing. """ repo_name_path = os.path.join(repo_path, REPO_NAME_LOC) + f = None try: - return io.open( + f = io.open( _unicode_encode(repo_name_path, encoding=_encodings['fs'], errors='strict'), mode='r', encoding=_encodings['repo.content'], - errors='replace').readline().strip(), False + errors='replace') + return f.readline().strip(), False except EnvironmentError: return "x-" + os.path.basename(repo_path), True + finally: + if f is not None: + f.close() def info_string(self): """ |