From 68d0cd2fbbe6ade9c923930c57a9314beddeb6d6 Mon Sep 17 00:00:00 2001 From: Wim Taymans Date: Tue, 10 Jun 2025 10:51:23 +0200 Subject: [PATCH] alsa: handle NULL io It is possible that the port io is set to NULL when the node is negotiating or destroying. Fixes #4734 --- spa/plugins/alsa/alsa-pcm.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/spa/plugins/alsa/alsa-pcm.c b/spa/plugins/alsa/alsa-pcm.c index eaa0939b6..e08b630f1 100644 --- a/spa/plugins/alsa/alsa-pcm.c +++ b/spa/plugins/alsa/alsa-pcm.c @@ -3319,11 +3319,13 @@ static int playback_ready(struct state *state) { struct spa_io_buffers *io = state->io; - spa_log_trace_fp(state->log, "%p: %d", state, io->status); + spa_log_trace_fp(state->log, "%p: %d", state, io ? io->status : 0); update_sources(state, false); - io->status = SPA_STATUS_NEED_DATA; + if (io != NULL) + io->status = SPA_STATUS_NEED_DATA; + return spa_node_call_ready(&state->callbacks, SPA_STATUS_NEED_DATA); }