server: Add extra call() to Server::stop()

Not a full solution, though should prevent test1000
from occasionally leaving evbase workers dangling

> not ok 1001 - Instance leak ServerGPRConnect : 217
> not ok 1002 - Instance leak SharedPVImpl : 984
> not ok 1003 - Instance leak StructTop : 1202
> not ok 1004 - Instance leak UDPListener : 2
> not ok 1005 - Instance leak evbase : 2
> not ok 1006 - Instance leak evbaseRunning : 2
This commit is contained in:
Michael Davidsaver
2023-05-09 09:22:58 -07:00
parent c197ad6a1b
commit e7a0775d76
+6
View File
@@ -653,6 +653,12 @@ void Server::Pvt::stop()
state = Stopped;
});
/* Cycle through once more to ensure any callbacks queue during the previous call have completed.
* TODO: this is partly a crutch as eg. SharedPV::attach() binds strong self references
* into on*() lambdas, which indirectly hold references keeping acceptor_loop alive.
*/
acceptor_loop.sync();
}
void Server::Pvt::onSearch(const UDPManager::Search& msg)