From cde01d3ff9300752bfb635ad9c77436ccd251f57 Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Fri, 27 Feb 2009 05:23:37 +0000 Subject: Use Popen.communicate() to avoid a potential deadlock. svn path=/main/trunk/; revision=12729 --- pym/portage/sets/shell.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'pym') diff --git a/pym/portage/sets/shell.py b/pym/portage/sets/shell.py index 8114b5133..43a8fe02f 100644 --- a/pym/portage/sets/shell.py +++ b/pym/portage/sets/shell.py @@ -33,9 +33,9 @@ class CommandOutputSet(PackageSet): def load(self): pipe = subprocess.Popen(self._command, stdout=subprocess.PIPE, shell=True) + stdout, stderr = pipe.communicate() if pipe.wait() == os.EX_OK: - text = unicode(pipe.stdout.read(), errors='replace') - self._setAtoms(text.splitlines()) + self._setAtoms(unicode(stdout, errors='replace').splitlines()) def singleBuilder(self, options, settings, trees): if not "command" in options: -- cgit v1.2.3-1-g7c22