diff options
Diffstat (limited to 'bitbake/lib/bb/server/process.py')
-rw-r--r-- | bitbake/lib/bb/server/process.py | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/bitbake/lib/bb/server/process.py b/bitbake/lib/bb/server/process.py index 5c7dfaefa1..6a12f01057 100644 --- a/bitbake/lib/bb/server/process.py +++ b/bitbake/lib/bb/server/process.py | |||
@@ -388,8 +388,10 @@ class BitBakeServer(object): | |||
388 | self.bitbake_lock.close() | 388 | self.bitbake_lock.close() |
389 | 389 | ||
390 | ready = ConnectionReader(self.readypipe) | 390 | ready = ConnectionReader(self.readypipe) |
391 | r = ready.wait(30) | 391 | r = ready.poll(30) |
392 | if not r: | 392 | if r: |
393 | r = ready.get() | ||
394 | if not r or r != "ready": | ||
393 | ready.close() | 395 | ready.close() |
394 | bb.error("Unable to start bitbake server") | 396 | bb.error("Unable to start bitbake server") |
395 | if os.path.exists(logfile): | 397 | if os.path.exists(logfile): |
@@ -404,8 +406,15 @@ class BitBakeServer(object): | |||
404 | print("Starting bitbake server pid %d" % os.getpid()) | 406 | print("Starting bitbake server pid %d" % os.getpid()) |
405 | server = ProcessServer(self.bitbake_lock, self.sock, self.sockname) | 407 | server = ProcessServer(self.bitbake_lock, self.sock, self.sockname) |
406 | self.configuration.setServerRegIdleCallback(server.register_idle_function) | 408 | self.configuration.setServerRegIdleCallback(server.register_idle_function) |
407 | 409 | writer = ConnectionWriter(self.readypipein) | |
408 | self.cooker = bb.cooker.BBCooker(self.configuration, self.featureset, self.readypipein) | 410 | try: |
411 | self.cooker = bb.cooker.BBCooker(self.configuration, self.featureset) | ||
412 | writer.send("ready") | ||
413 | except: | ||
414 | writer.send("fail") | ||
415 | raise | ||
416 | finally: | ||
417 | os.close(self.readypipein) | ||
409 | server.cooker = self.cooker | 418 | server.cooker = self.cooker |
410 | server.server_timeout = self.configuration.server_timeout | 419 | server.server_timeout = self.configuration.server_timeout |
411 | server.xmlrpcinterface = self.configuration.xmlrpcinterface | 420 | server.xmlrpcinterface = self.configuration.xmlrpcinterface |