From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 1A10D138334 for ; Tue, 26 Jun 2018 20:24:28 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 3FCF3E093D; Tue, 26 Jun 2018 20:24:27 +0000 (UTC) Received: from smtp.gentoo.org (dev.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 0C4E7E093D for ; Tue, 26 Jun 2018 20:24:27 +0000 (UTC) Received: from oystercatcher.gentoo.org (unknown [IPv6:2a01:4f8:202:4333:225:90ff:fed9:fc84]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 93DFC335CA7 for ; Tue, 26 Jun 2018 20:24:25 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 2B91B2C2 for ; Tue, 26 Jun 2018 20:24:24 +0000 (UTC) From: "Zac Medico" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Zac Medico" Message-ID: <1530044185.2710f9ab525e7c726c2ffb027e242dbdf31cfe76.zmedico@gentoo> Subject: [gentoo-commits] proj/portage:master commit in: pym/portage/dbapi/ X-VCS-Repository: proj/portage X-VCS-Files: pym/portage/dbapi/bintree.py X-VCS-Directories: pym/portage/dbapi/ X-VCS-Committer: zmedico X-VCS-Committer-Name: Zac Medico X-VCS-Revision: 2710f9ab525e7c726c2ffb027e242dbdf31cfe76 X-VCS-Branch: master Date: Tue, 26 Jun 2018 20:24:24 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Archives-Salt: 58273144-64fe-49b7-b61d-0c57c9244f83 X-Archives-Hash: fa6639f287008b3838e0fa4c362661d4 commit: 2710f9ab525e7c726c2ffb027e242dbdf31cfe76 Author: Zac Medico gentoo org> AuthorDate: Tue Jun 26 20:14:09 2018 +0000 Commit: Zac Medico gentoo org> CommitDate: Tue Jun 26 20:16:25 2018 +0000 URL: https://gitweb.gentoo.org/proj/portage.git/commit/?id=2710f9ab binarytree._merge_pkgindex_header: deduplicate values (bug 657422) Deduplicate values of implicit IUSE variables, in order to prevent them from growing without bound, triggering "[Errno 7] Argument list too long" errors as reported in bug 657422. Fixes: cab78dba98c4 ("emerge --usepkgonly: propagate implicit IUSE and USE_EXPAND (bug 640318)") Bug: https://bugs.gentoo.org/657422 pym/portage/dbapi/bintree.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pym/portage/dbapi/bintree.py b/pym/portage/dbapi/bintree.py index 269a7b226..9c2d877e7 100644 --- a/pym/portage/dbapi/bintree.py +++ b/pym/portage/dbapi/bintree.py @@ -1320,7 +1320,9 @@ class binarytree(object): for k, v in iter_iuse_vars(src): v_before = dest.get(k) if v_before is not None: - v = v_before + ' ' + v + merged_values = set(v_before.split()) + merged_values.update(v.split()) + v = ' '.join(sorted(merged_values)) dest[k] = v if 'ARCH' not in dest and 'ARCH' in src: