Commit Graph

12 Commits

Author SHA1 Message Date
Robbert van der Helm 3a9d902c72 Allow all threads to return when sockets close
This was not a problem with individually hosted plugins because the
entire process got terminated at once, but here we all threads to shut
down gracefully when a plugin's sockets get closed. I wish this wouldn't
need all these try-catches, but we're not writing Haskell here.

The only issue remaining is that for some reason only the first
instance's editor works, at least for Serum. This might be because of
the message loop.
2020-05-22 23:22:49 +02:00
Robbert van der Helm bea924c0e1 Make plugin initialization thread safe 2020-05-22 22:42:24 +02:00
Robbert van der Helm b4b471523f Fix assertion in group host connection handler 2020-05-22 20:15:53 +02:00
Robbert van der Helm 9fb7f1fc03 Add handling for stale and active group sockets 2020-05-22 19:06:43 +02:00
Robbert van der Helm 9b50bac179 Reply with the group process's PID after a request 2020-05-22 19:06:43 +02:00
Robbert van der Helm dd843519ce Rename PluginParameters to GroupReuqest 2020-05-22 19:06:43 +02:00
Robbert van der Helm 8c22f37f29 Actually host plugins in the group process 2020-05-21 17:12:55 +02:00
Robbert van der Helm 17cff5722e Lock the active plugins map early
To prevent a race condition when an exiting plugin wants to terminate
the process when it think there are no plugins left just as another
yabridge instance is connecting to the group socket.
2020-05-21 17:12:41 +02:00
Robbert van der Helm 8eb01cb519 Listen on the group socket and handle requests 2020-05-20 18:45:33 +02:00
Robbert van der Helm 6d6d928838 Move all plugin group handling boilerplate 2020-05-19 15:29:48 +02:00
Robbert van der Helm 8bd1dc8c50 Encapsulate the STDOUT/STDERR capturing 2020-05-18 16:15:07 +02:00
Robbert van der Helm 53acb1f78a Move wine-bridge.h -> bridges/vst2.h
This way we can structure the group handling and a potential future VST3
bridge in the same way.
2020-05-18 16:15:07 +02:00