From 753d35cb6784fc361c9804800355ff8b6b70a247 Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Sun, 16 Oct 2011 19:51:00 -0700 Subject: repoman: handle subprocess bug with Python 3.1 --- bin/repoman | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'bin/repoman') diff --git a/bin/repoman b/bin/repoman index efd8a01ad..ba810c66c 100755 --- a/bin/repoman +++ b/bin/repoman @@ -2466,7 +2466,15 @@ else: portage.writemsg_stdout("(%s)\n" % " ".join(add_cmd), noiselevel=-1) else: - add_cmd = [_unicode_encode(arg) for arg in add_cmd] + if not (sys.hexversion >= 0x3000000 and sys.hexversion < 0x3020000): + # Python 3.1 produces the following TypeError if raw bytes are + # passed to subprocess.call(): + # File "/usr/lib/python3.1/subprocess.py", line 646, in __init__ + # errread, errwrite) + # File "/usr/lib/python3.1/subprocess.py", line 1157, in _execute_child + # raise child_exception + # TypeError: expected an object with the buffer interface + add_cmd = [_unicode_encode(arg) for arg in add_cmd] retcode = subprocess.call(add_cmd) if retcode != os.EX_OK: logging.error( -- cgit v1.2.3-1-g7c22