client-stream: swap local and remote io area

This commit is contained in:
Wim Taymans 2018-06-25 14:33:00 +02:00
parent c01112d6c2
commit bb7be076bb

View file

@ -761,15 +761,16 @@ static int impl_node_process(struct spa_node *node)
trigger = status & SPA_STATUS_HAVE_BUFFER; trigger = status & SPA_STATUS_HAVE_BUFFER;
} }
else { else {
struct spa_io_buffers tmp;
spa_log_trace(this->log, "%p: process %d/%d %d/%d", this, spa_log_trace(this->log, "%p: process %d/%d %d/%d", this,
impl->io->status, impl->io->buffer_id, impl->io->status, impl->io->buffer_id,
impl->client_port_mix.io->status, impl->client_port_mix.io->status,
impl->client_port_mix.io->buffer_id); impl->client_port_mix.io->buffer_id);
if (impl->direction == SPA_DIRECTION_INPUT) tmp = *impl->io;
*impl->client_port_mix.io = *impl->io;
else
*impl->io = *impl->client_port_mix.io; *impl->io = *impl->client_port_mix.io;
*impl->client_port_mix.io = tmp;
status = impl->io->status; status = impl->io->status;
} }