diff --git a/src/modules/module-client-node/client-node.c b/src/modules/module-client-node/client-node.c index 7f74d6361..d2da92174 100644 --- a/src/modules/module-client-node/client-node.c +++ b/src/modules/module-client-node/client-node.c @@ -775,7 +775,7 @@ static int spa_proxy_node_process_output(struct spa_node *node) { struct proxy *this; struct impl *impl; - int i; + int i, res = SPA_RESULT_OK; this = SPA_CONTAINER_OF(node, struct proxy, node); impl = this->impl; @@ -783,19 +783,23 @@ static int spa_proxy_node_process_output(struct spa_node *node) pw_log_trace("process output"); for (i = 0; i < MAX_OUTPUTS; i++) { - struct spa_port_io *io = this->out_ports[i].io; + struct spa_port_io *io = this->out_ports[i].io, tmp; if (!io) continue; + tmp = impl->transport->outputs[i]; impl->transport->outputs[i] = *io; + if (tmp.status == SPA_RESULT_HAVE_BUFFER) + res = SPA_RESULT_HAVE_BUFFER; + *io = tmp; pw_log_trace("%d %d %d", io->status, io->buffer_id, io->status); } pw_transport_add_event(impl->transport, &SPA_EVENT_INIT(impl->core->type.event_transport.ProcessOutput)); do_flush(this); - return SPA_RESULT_OK; + return res; } static int handle_node_event(struct proxy *this, struct spa_event *event) diff --git a/src/pipewire/remote.c b/src/pipewire/remote.c index 99c815436..43bc45ffd 100644 --- a/src/pipewire/remote.c +++ b/src/pipewire/remote.c @@ -374,7 +374,6 @@ static void handle_rtnode_event(struct pw_proxy *proxy, struct spa_event *event) struct node_data *data = proxy->user_data; struct pw_remote *remote = proxy->remote; struct spa_graph_node *n = &data->node->rt.node; - int res; if (SPA_EVENT_TYPE(event) == remote->core->type.event_transport.ProcessInput) { struct spa_list ready; @@ -388,7 +387,7 @@ static void handle_rtnode_event(struct pw_proxy *proxy, struct spa_event *event) spa_graph_scheduler_chain(data->node->rt.sched, &ready); } else if (SPA_EVENT_TYPE(event) == remote->core->type.event_transport.ProcessOutput) { - res = n->methods->process_output(n, n->user_data); + n->methods->process_output(n, n->user_data); } else if (SPA_EVENT_TYPE(event) == remote->core->type.event_transport.ReuseBuffer) { } diff --git a/src/server/meson.build b/src/server/meson.build deleted file mode 100644 index b0418eac5..000000000 --- a/src/server/meson.build +++ /dev/null @@ -1,53 +0,0 @@ -pipewirecore_headers = [ - 'client.h', - 'command.h', - 'core.h', - 'data-loop.h', - 'link.h', - 'main-loop.h', - 'module.h', - 'node.h', - 'node-factory.h', - 'port.h', - 'remote.h', - 'resource.h', - 'work-queue.h', -] - -pipewirecore_sources = [ - 'client.c', - 'command.c', - 'core.c', - 'data-loop.c', - 'link.c', - 'main-loop.c', - 'module.c', - 'node.c', - 'node-factory.c', - 'port.c', - 'remote.c', - 'resource.c', - 'work-queue.c', -] - -install_headers(pipewirecore_headers, subdir : 'pipewire/server') - -libpipewirecore_c_args = [ - '-DHAVE_CONFIG_H', - '-D_GNU_SOURCE', -] - -libpipewirecore = shared_library('pipewirecore-@0@'.format(apiversion), pipewirecore_sources, - version : libversion, - soversion : soversion, - c_args : libpipewirecore_c_args, - include_directories : [configinc, spa_inc], - link_with : spalib, - install : true, - dependencies : [mathlib, dl_lib, pipewire_dep], -) - -pipewirecore_dep = declare_dependency(link_with : libpipewirecore, - include_directories : [configinc, spa_inc], - dependencies : [pipewire_dep], -)