diff --git a/src/pipewire/private.h b/src/pipewire/private.h index ce49af6c5..e2bf55365 100644 --- a/src/pipewire/private.h +++ b/src/pipewire/private.h @@ -1091,6 +1091,7 @@ int pw_control_remove_link(struct pw_control_link *link); void pw_control_destroy(struct pw_control *control); void pw_proxy_unref(struct pw_proxy *proxy); +void pw_proxy_ref(struct pw_proxy *proxy); #define PW_LOG_OBJECT_POD (1<<0) void pw_log_log_object(enum spa_log_level level, const char *file, int line, diff --git a/src/pipewire/proxy.c b/src/pipewire/proxy.c index 2a6d78189..cd3aaa581 100644 --- a/src/pipewire/proxy.c +++ b/src/pipewire/proxy.c @@ -297,6 +297,13 @@ void pw_proxy_unref(struct pw_proxy *proxy) free(proxy); } +SPA_EXPORT +void pw_proxy_ref(struct pw_proxy *proxy) +{ + assert(proxy->refcount > 0); + proxy->refcount++; +} + SPA_EXPORT int pw_proxy_sync(struct pw_proxy *proxy, int seq) {