aboutsummaryrefslogtreecommitdiffstats
path: root/include/wth-receiver-comm.h
diff options
context:
space:
mode:
authorMarius Vlad <marius.vlad@collabora.com>2020-11-02 16:51:08 +0200
committerMarius Vlad <marius.vlad@collabora.com>2020-12-01 13:07:57 +0200
commit8fcbed84cfefcfe648584941587e6d06abf59c3e (patch)
tree4a370a19465e12543e74563fc136cf916554ca6f /include/wth-receiver-comm.h
parent2373db4b31a646d4936f6700ecc2af857302444b (diff)
wth-receiver: Handle events from the remote side and from the local compositor
With this, we fork and let the child deal with the gstreamer pipeline while the parent is still able to process events from the transimtter. Using blocking dispatching function will make the main loop be stuck in processing events without being able to dispatch any handlers that might be due to the requests from the transmistter side. So in order to allow the mainloop (still) handle the events, we fork and let child deal with the gstreamer pipeline. Bug-AGL: SPEC-3675 Signed-off-by: Marius Vlad <marius.vlad@collabora.com> Change-Id: I50e1d49b55849dc32f611538bad2ce1c676c9a97
Diffstat (limited to 'include/wth-receiver-comm.h')
-rw-r--r--include/wth-receiver-comm.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/include/wth-receiver-comm.h b/include/wth-receiver-comm.h
index 4499053..fc6e6ae 100644
--- a/include/wth-receiver-comm.h
+++ b/include/wth-receiver-comm.h
@@ -131,6 +131,7 @@ struct ivisurface {
struct wthp_callback *cb;
struct wl_list link; /* struct client::surface_list */
struct surface *surf;
+ struct application_id *appid;
};
/* wthp_ivi_application protocol object */
@@ -164,6 +165,9 @@ struct client {
struct wl_list link; /* struct receiver::client_list */
struct receiver *receiver;
+ pid_t pid;
+ bool pid_destroying;
+
struct wth_connection *connection;
struct watch conn_watch;