summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2011-01-21 16:50:59 -0800
committerZac Medico <zmedico@gentoo.org>2011-01-21 16:50:59 -0800
commit7b60b06b6957e4c16555dc644035fa69fbae65d1 (patch)
tree062f58aaa2a4dc1b1ecf92924ebfe7af57954be7
parent635d15f7d4ea14e95333d0a332018f30585b513b (diff)
downloadportage-7b60b06b6957e4c16555dc644035fa69fbae65d1.tar.gz
portage-7b60b06b6957e4c16555dc644035fa69fbae65d1.tar.bz2
portage-7b60b06b6957e4c16555dc644035fa69fbae65d1.zip
fdopen: read from processes in unbuffered modev2.2.0_alpha19
It doesn't make sense to use buffers in cases like this, and is potentially error prone (as in bug #287648 / python issue 5380).
-rw-r--r--pym/_emerge/EbuildMetadataPhase.py4
-rw-r--r--pym/portage/package/ebuild/doebuild.py2
-rw-r--r--pym/portage/tests/lazyimport/test_lazy_import_portage_baseline.py4
-rw-r--r--pym/portage/tests/process/test_poll.py4
4 files changed, 7 insertions, 7 deletions
diff --git a/pym/_emerge/EbuildMetadataPhase.py b/pym/_emerge/EbuildMetadataPhase.py
index eaa7f40b2..5925ec462 100644
--- a/pym/_emerge/EbuildMetadataPhase.py
+++ b/pym/_emerge/EbuildMetadataPhase.py
@@ -1,4 +1,4 @@
-# Copyright 1999-2009 Gentoo Foundation
+# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
from _emerge.SubProcess import SubProcess
@@ -83,7 +83,7 @@ class EbuildMetadataPhase(SubProcess):
fd_pipes[self._metadata_fd] = slave_fd
self._raw_metadata = []
- files.ebuild = os.fdopen(master_fd, 'rb')
+ files.ebuild = os.fdopen(master_fd, 'rb', 0)
self._reg_id = self.scheduler.register(files.ebuild.fileno(),
self._registered_events, self._output_handler)
self._registered = True
diff --git a/pym/portage/package/ebuild/doebuild.py b/pym/portage/package/ebuild/doebuild.py
index d2f226cd0..6fc7489aa 100644
--- a/pym/portage/package/ebuild/doebuild.py
+++ b/pym/portage/package/ebuild/doebuild.py
@@ -587,7 +587,7 @@ def doebuild(myebuild, mydo, myroot, mysettings, debug=0, listonly=0,
mypids = _spawn_phase(mydo, mysettings, returnpid=True,
fd_pipes=fd_pipes)
os.close(pw) # belongs exclusively to the child process now
- f = os.fdopen(pr, 'rb')
+ f = os.fdopen(pr, 'rb', 0)
for k, v in zip(auxdbkeys,
(_unicode_decode(line).rstrip('\n') for line in f)):
dbkey[k] = v
diff --git a/pym/portage/tests/lazyimport/test_lazy_import_portage_baseline.py b/pym/portage/tests/lazyimport/test_lazy_import_portage_baseline.py
index 14ed3a1f8..7c3b2f99a 100644
--- a/pym/portage/tests/lazyimport/test_lazy_import_portage_baseline.py
+++ b/pym/portage/tests/lazyimport/test_lazy_import_portage_baseline.py
@@ -1,4 +1,4 @@
-# Copyright 2010 Gentoo Foundation
+# Copyright 2010-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
import re
@@ -53,7 +53,7 @@ sys.stdout.write(" ".join(k for k in sys.modules
scheduler = PollScheduler().sched_iface
master_fd, slave_fd = os.pipe()
- master_file = os.fdopen(master_fd, 'rb')
+ master_file = os.fdopen(master_fd, 'rb', 0)
slave_file = os.fdopen(slave_fd, 'wb')
producer = SpawnProcess(
args=self._baseline_import_cmd,
diff --git a/pym/portage/tests/process/test_poll.py b/pym/portage/tests/process/test_poll.py
index 9df2e88ae..ee6ee0c3f 100644
--- a/pym/portage/tests/process/test_poll.py
+++ b/pym/portage/tests/process/test_poll.py
@@ -1,4 +1,4 @@
-# Copyright 1998-2010 Gentoo Foundation
+# Copyright 1998-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
from portage import os
@@ -20,7 +20,7 @@ class PipeReaderTestCase(TestCase):
scheduler = PollScheduler().sched_iface
master_fd, slave_fd = os.pipe()
- master_file = os.fdopen(master_fd, 'rb')
+ master_file = os.fdopen(master_fd, 'rb', 0)
slave_file = os.fdopen(slave_fd, 'wb')
producer = SpawnProcess(
args=["bash", "-c", "echo -n '%s'" % test_string],