summaryrefslogtreecommitdiffstats
path: root/bin/ebuild-ipc.py
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2010-09-18 04:58:40 -0700
committerZac Medico <zmedico@gentoo.org>2010-09-18 04:58:40 -0700
commit81fc303212b8379219cf5d463c8717359b972dba (patch)
tree71a2c429d84d9770b58f9df15946daf6da502bee /bin/ebuild-ipc.py
parent2f7fbc1e0511a55a4bbe9c92b2cd105cdb1660dd (diff)
downloadportage-81fc303212b8379219cf5d463c8717359b972dba.tar.gz
portage-81fc303212b8379219cf5d463c8717359b972dba.tar.bz2
portage-81fc303212b8379219cf5d463c8717359b972dba.zip
Use blocking IO in ebuild-ipc.py and EbuildIpcDaemon._send_reply(),
in hopes that it will be more portable (see bug #337465).
Diffstat (limited to 'bin/ebuild-ipc.py')
-rwxr-xr-xbin/ebuild-ipc.py18
1 files changed, 1 insertions, 17 deletions
diff --git a/bin/ebuild-ipc.py b/bin/ebuild-ipc.py
index 2d524a752..7637fb5d5 100755
--- a/bin/ebuild-ipc.py
+++ b/bin/ebuild-ipc.py
@@ -9,7 +9,6 @@ import array
import logging
import os
import pickle
-import select
import signal
import sys
import time
@@ -91,9 +90,6 @@ class EbuildIpc(object):
# File streams are in unbuffered mode since we do atomic
# read and write of whole pickles.
- input_fd = os.open(self.ipc_out_fifo,
- os.O_RDONLY|os.O_NONBLOCK)
- input_file = os.fdopen(input_fd, 'rb', 0)
output_file = None
while True:
@@ -124,19 +120,7 @@ class EbuildIpc(object):
self._no_daemon_msg()
return 2
- start_time = time.time()
- while True:
- events = select.select([input_file], [], [],
- self._COMMUNICATE_RETRY_TIMEOUT_SECONDS)
- if events[0]:
- break
- else:
- if self._daemon_is_alive():
- self._timeout_retry_msg(start_time,
- portage.localization._('during select'))
- else:
- self._no_daemon_msg()
- return 2
+ input_file = open(self.ipc_out_fifo, 'rb', 0)
start_time = time.time()
while True: