summaryrefslogtreecommitdiff
path: root/libgupnp/gupnp-service.c
diff options
context:
space:
mode:
authorJens Georg <mail@jensge.org>2022-01-03 19:51:32 +0100
committerJens Georg <mail@jensge.org>2022-01-03 19:52:39 +0100
commitc85b5f05d5f7f1b5555bc16950d552e8e2155ec4 (patch)
tree3e9a8cf5d5a56289ba72229966d2c62e40c23005 /libgupnp/gupnp-service.c
parent320f1a2f2c21f17a30b1565533dbe70871466588 (diff)
downloadgupnp-c85b5f05d5f7f1b5555bc16950d552e8e2155ec4.tar.gz
Service: Signal action_invoked if vfunc exists
This allows for consumers to implement custom dispatchers inside the vfunc (e.g. in GI languages) Fixes #61
Diffstat (limited to 'libgupnp/gupnp-service.c')
-rw-r--r--libgupnp/gupnp-service.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/libgupnp/gupnp-service.c b/libgupnp/gupnp-service.c
index f86f6af..c740f2d 100644
--- a/libgupnp/gupnp-service.c
+++ b/libgupnp/gupnp-service.c
@@ -484,7 +484,8 @@ control_server_handler (SoupServer *server,
GQuark action_name_quark;
action_name_quark = g_quark_from_string (action_name);
- if (g_signal_has_handler_pending (service,
+ if (GUPNP_SERVICE_GET_CLASS (service)->action_invoked != NULL ||
+ g_signal_has_handler_pending (service,
signals[ACTION_INVOKED],
action_name_quark,
FALSE)) {