From 5bb7ece8b4cdeffc253520b817b1970f66573311 Mon Sep 17 00:00:00 2001 From: Aleksander Morgado Date: Mon, 13 Jul 2026 11:14:56 +0000 Subject: [PATCH] cinterion: fix heap double-free during GPS location disablement https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/work_items/1077 Signed-off-by: Aleksander Morgado --- src/plugins/cinterion/mm-shared-cinterion.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/plugins/cinterion/mm-shared-cinterion.c b/src/plugins/cinterion/mm-shared-cinterion.c index 3a703a22..9ed321fb 100644 --- a/src/plugins/cinterion/mm-shared-cinterion.c +++ b/src/plugins/cinterion/mm-shared-cinterion.c @@ -650,11 +650,9 @@ disable_location_gathering_context_gps_step (GTask *task) } if (ctx->sgpss_error) { - g_task_return_error (task, ctx->sgpss_error); - g_clear_error (&ctx->sgpss_error); + g_task_return_error (task, g_steal_pointer (&ctx->sgpss_error)); } else if (ctx->sgpsc_error) { - g_task_return_error (task, ctx->sgpsc_error); - g_clear_error (&ctx->sgpsc_error); + g_task_return_error (task, g_steal_pointer (&ctx->sgpsc_error)); } else { priv->enabled_sources &= ~ctx->source; g_task_return_boolean (task, TRUE);