aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/mm-broadband-modem-mbim.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/mm-broadband-modem-mbim.c b/src/mm-broadband-modem-mbim.c
index e8670b0c..39e1f3e3 100644
--- a/src/mm-broadband-modem-mbim.c
+++ b/src/mm-broadband-modem-mbim.c
@@ -8405,6 +8405,13 @@ load_sim_slots_context_free (LoadSimSlotsContext *ctx)
g_slice_free (LoadSimSlotsContext, ctx);
}
+static void
+sim_slot_free (MMBaseSim *sim)
+{
+ if (sim)
+ g_object_unref (sim);
+}
+
static gboolean
load_sim_slots_finish (MMIfaceModem *self,
GAsyncResult *res,
@@ -8632,7 +8639,7 @@ query_sys_caps_ready (MbimDevice *device,
return;
}
ctx->number_slots = number_slots;
- ctx->sim_slots = g_ptr_array_new_full (number_slots, NULL);
+ ctx->sim_slots = g_ptr_array_new_full (number_slots, (GDestroyNotify) sim_slot_free);
if (number_executors == 0) {
g_task_return_new_error (task, MM_CORE_ERROR, MM_CORE_ERROR_NOT_FOUND,