From 469c6865041ee524067497b450fb40ef4daa235d Mon Sep 17 00:00:00 2001 From: Rukun Mao Date: Wed, 15 Oct 2025 18:21:24 +0000 Subject: [PATCH] sim-mbim: fix `preload_cancellable` bug that causes a crash In merge request !1405, when handling subscriber_ready_status_ready() fails, it exits early and allows preload retry without resetting `self->priv->preload_cancellable`. When the preload_subscriber_info() runs again, it fails at g_assert check and causes a crash. Before !1405, `self->priv->preload_cancellable` is reset within application_list_query_ready(). Signed-off-by: Rukun Mao --- src/mm-sim-mbim.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/mm-sim-mbim.c b/src/mm-sim-mbim.c index bc260eae..97d3d190 100644 --- a/src/mm-sim-mbim.c +++ b/src/mm-sim-mbim.c @@ -341,6 +341,7 @@ subscriber_ready_status_ready (MbimDevice *device, if (self->priv->preload_error || ready_state == MBIM_SUBSCRIBER_READY_STATE_NOT_INITIALIZED) { self->priv->preload = FALSE; + g_clear_object (&self->priv->preload_cancellable); if (self->priv->preload_error) g_task_return_error (task, g_steal_pointer (&self->priv->preload_error)); else