commit cd84bd01421aebb3f1455d3573c77ea23f88c2e3 parent 37a45a3bfc912b92949d56efb3526b5bc5f3b28d Author: Dominik Schmidt <dominik@schm1dt.ch> Date: Thu, 13 Sep 2018 11:04:26 +0200 Actually do the restarting part when an endpoint finishes Diffstat:
src/bastlibridge/manager.d | | | 9 | ++++++--- |
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/src/bastlibridge/manager.d b/src/bastlibridge/manager.d @@ -54,9 +54,11 @@ class Manager{ /** * Syntax: name=basetype:argstring */ - void addEndpoint(string cmdline){ + Process addEndpoint(string cmdline){ auto ep=createEndpoint(cmdline); - addProcess(Process(ep)); + auto proc=Process(ep); + addProcess(proc); + return proc; } void addProcess(Process p){ @@ -117,7 +119,8 @@ class Manager{ p.thread.join(); removeEndpoint(name); if(p.endpoint.restart){ - addEndpoint(p.endpoint.cmdline); + auto process=addEndpoint(p.endpoint.cmdline); + process.start(); } }