From 1aea678de5d31f3847e347e0233b1fcb18a80b93 Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Sat, 28 Feb 2009 08:27:56 +0000 Subject: [PATCH] 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 --- bin/repoman | 18 +++++++++++------- 1 file 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 -- 2.26.2