mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2025-11-02 09:01:50 -05:00
resource: add function to send error to another resource
Make a function to send an error to another resource. This can be used to send errors to proxies that now have a resource associated with them, like in error cases.
This commit is contained in:
parent
1ab6167f35
commit
278cc9f90a
2 changed files with 20 additions and 5 deletions
|
|
@ -225,16 +225,30 @@ uint32_t pw_resource_get_bound_id(struct pw_resource *resource)
|
|||
return resource->bound_id;
|
||||
}
|
||||
|
||||
static void SPA_PRINTF_FUNC(4, 0)
|
||||
pw_resource_errorv_id(struct pw_resource *resource, uint32_t id, int res, const char *error, va_list ap)
|
||||
{
|
||||
struct pw_impl_client *client = resource->client;
|
||||
if (client->core_resource != NULL)
|
||||
pw_core_resource_errorv(client->core_resource,
|
||||
id, client->recv_seq, res, error, ap);
|
||||
}
|
||||
|
||||
SPA_EXPORT
|
||||
void pw_resource_errorf(struct pw_resource *resource, int res, const char *error, ...)
|
||||
{
|
||||
va_list ap;
|
||||
struct pw_impl_client *client = resource->client;
|
||||
|
||||
va_start(ap, error);
|
||||
if (client->core_resource != NULL)
|
||||
pw_core_resource_errorv(client->core_resource,
|
||||
resource->id, client->recv_seq, res, error, ap);
|
||||
pw_resource_errorv_id(resource, resource->id, res, error, ap);
|
||||
va_end(ap);
|
||||
}
|
||||
|
||||
SPA_EXPORT
|
||||
void pw_resource_errorf_id(struct pw_resource *resource, uint32_t id, int res, const char *error, ...)
|
||||
{
|
||||
va_list ap;
|
||||
va_start(ap, error);
|
||||
pw_resource_errorv_id(resource, id, res, error, ap);
|
||||
va_end(ap);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -134,6 +134,7 @@ uint32_t pw_resource_get_bound_id(struct pw_resource *resource);
|
|||
/** Generate an error for a resource */
|
||||
void pw_resource_error(struct pw_resource *resource, int res, const char *error);
|
||||
void pw_resource_errorf(struct pw_resource *resource, int res, const char *error, ...) SPA_PRINTF_FUNC(3, 4);
|
||||
void pw_resource_errorf_id(struct pw_resource *resource, uint32_t id, int res, const char *error, ...) SPA_PRINTF_FUNC(4, 5);
|
||||
|
||||
/** Get the list of object listeners from a resource */
|
||||
struct spa_hook_list *pw_resource_get_object_listeners(struct pw_resource *resource);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue