diff options
author | Zac Medico <zmedico@gentoo.org> | 2009-02-28 08:27:56 +0000 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2009-02-28 08:27:56 +0000 |
commit | 1aea678de5d31f3847e347e0233b1fcb18a80b93 (patch) | |
tree | 10d5270947a7b926daad6cd553df23e40e95151c | |
parent | dfc897f21bb3ad74e134cded53fefce9f0f6e63d (diff) | |
download | portage-1aea678de5d31f3847e347e0233b1fcb18a80b93.tar.gz portage-1aea678de5d31f3847e347e0233b1fcb18a80b93.tar.bz2 portage-1aea678de5d31f3847e347e0233b1fcb18a80b93.zip |
When checking ebuild content, use codecs.open() to force utf_8 encoding for
py3k compatibility (all ebuilds should have utf_8 encoding).
svn path=/main/trunk/; revision=12733
-rwxr-xr-x | bin/repoman | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/bin/repoman b/bin/repoman index eaa03f749..318bc1ca0 100755 --- a/bin/repoman +++ b/bin/repoman @@ -1444,14 +1444,18 @@ for x in scanlist: # Syntax Checks relative_path = os.path.join(x, y + ".ebuild") full_path = os.path.join(repodir, relative_path) - f = open(full_path) try: - for check_name, e in run_checks(f, pkg): - stats[check_name] += 1 - fails[check_name].append(relative_path + ': %s' % e) - finally: - f.close() - del f + # All ebuilds should have utf_8 encoding. + f = codecs.open(full_path, mode='r', encoding='utf_8') + try: + for check_name, e in run_checks(f, pkg): + stats[check_name] += 1 + fails[check_name].append(relative_path + ': %s' % e) + finally: + f.close() + except UnicodeDecodeError: + # A file.UTF8 failure will have already been recorded above. + pass if options.force: # The dep_check() calls are the most expensive QA test. If --force |