The segfault happens when there are only two threads still active:
1. the main thread is in ~ThreadExecutor() (specifically, at dispatch_thread.join() in quiesce())
2. the dispatch thread is destroying a lambda created by AutoSendBuffer. Specifically, destroying the buffer it owns as "to_send" is where the segfault is reported.
Presumably this buffer was allocated by "mirserver: Selected driver: mir:stub-graphics", perhaps that .so has been unloaded meantime?
The segfault happens when there are only two threads still active:
1. the main thread is in ~ThreadExecutor() (specifically, at dispatch_ thread. join() in quiesce())
2. the dispatch thread is destroying a lambda created by AutoSendBuffer. Specifically, destroying the buffer it owns as "to_send" is where the segfault is reported.
Presumably this buffer was allocated by "mirserver: Selected driver: mir:stub-graphics", perhaps that .so has been unloaded meantime?