bitbake: Update event queue handling to match upstream bitbake

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Richard Purdie
2011-01-10 13:12:35 +00:00
parent 9336ba1fd2
commit 2c2d160c88
2 changed files with 3 additions and 6 deletions

View File

@@ -129,13 +129,11 @@ def fire(event, d):
def worker_fire(event, d): def worker_fire(event, d):
data = "<event>" + pickle.dumps(event) + "</event>" data = "<event>" + pickle.dumps(event) + "</event>"
worker_pipe.write(data) worker_pipe.write(data)
worker_pipe.flush()
def fire_from_worker(event, d): def fire_from_worker(event, d):
if not event.startswith("<event>") or not event.endswith("</event>"): if not event.startswith("<event>") or not event.endswith("</event>"):
print("Error, not an event %s" % event) print("Error, not an event %s" % event)
return return
#print "Got event %s" % event
event = pickle.loads(event[7:-8]) event = pickle.loads(event[7:-8])
fire_ui_handlers(event, d) fire_ui_handlers(event, d)

View File

@@ -1083,10 +1083,9 @@ class RunQueueExecute:
sys.stdout.flush() sys.stdout.flush()
sys.stderr.flush() sys.stderr.flush()
try: try:
pipeinfd, pipeoutfd = os.pipe() pipein, pipeout = os.pipe()
pipein = os.fdopen(pipeinfd, 'rb', 4096) pipein = os.fdopen(pipein, 'rb', 4096)
pipeout = os.fdopen(pipeoutfd, 'wb', 4096) pipeout = os.fdopen(pipeout, 'wb', 0)
pid = os.fork() pid = os.fork()
except OSError as e: except OSError as e:
bb.msg.fatal(bb.msg.domain.RunQueue, "fork failed: %d (%s)" % (e.errno, e.strerror)) bb.msg.fatal(bb.msg.domain.RunQueue, "fork failed: %d (%s)" % (e.errno, e.strerror))