launch_daemon: actually launch the jobs.

* BRoster::Launch() cannot be used (yet), as it pre-registers the
  application we're launching, and that won't work for the registrar or
  anything else until the registrar is up and running.
* Renamed B_GET_LAUNCH_CONNECTIONS to B_GET_LAUNCH_DATA.
* Add the team ID to the get-launch-data reply.
* Added BLaunchRoster::GetPort() for convenience.
* Removed some superfluous debug output, but temporarily dump all stdio
  to /dev/dprintf (ie. the syslog).
* Made job matching case insensitive (as MIME types should be).
This commit is contained in:
Axel Dörfler
2015-07-22 20:40:01 +02:00
parent e489a80da0
commit d482c7ca5b
5 changed files with 88 additions and 26 deletions
+4 -12
View File
@@ -518,7 +518,7 @@ BApplication::_InitData(const char* signature, bool initGUI, status_t* _error)
// Return the error or exit, if there was an error and no error variable
// has been supplied.
if (_error) {
if (_error != NULL) {
*_error = fInitError;
} else if (fInitError != B_OK) {
DBG(OUT("BApplication::InitData() failed: %s\n", strerror(fInitError)));
@@ -531,16 +531,7 @@ DBG(OUT("BApplication::InitData() done\n"));
port_id
BApplication::_GetPort(const char* signature)
{
BLaunchRoster launchRoster;
BMessage data;
status_t status = launchRoster.GetData(signature, data);
if (status == B_OK) {
port_id port = data.GetInt32("port", B_NAME_NOT_FOUND);
if (port >= 0)
return port;
}
return -1;
return BLaunchRoster().GetPort(signature);
}
@@ -1265,7 +1256,8 @@ BApplication::ScriptReceived(BMessage* message, int32 index,
case B_ID_SPECIFIER:
{
// TODO
debug_printf("Looper's ID specifier used but not implemented.\n");
debug_printf("Looper's ID specifier used but not "
"implemented.\n");
break;
}
}