From d3c74e42523ee2c03dcaabcfc853115516d83edf Mon Sep 17 00:00:00 2001 From: Michael Tremer Date: Mon, 29 Jan 2024 17:45:13 +0000 Subject: [PATCH] problem: Store a reference to the context Signed-off-by: Michael Tremer --- src/libpakfire/problem.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/libpakfire/problem.c b/src/libpakfire/problem.c index d76f0bcc6..5d696dd06 100644 --- a/src/libpakfire/problem.c +++ b/src/libpakfire/problem.c @@ -25,6 +25,7 @@ #define PAKFIRE_LEGACY_LOGGING #include +#include #include #include #include @@ -36,6 +37,7 @@ #include struct pakfire_problem { + struct pakfire_ctx* ctx; struct pakfire* pakfire; int nrefs; @@ -198,6 +200,7 @@ int pakfire_problem_create(struct pakfire_problem** problem, if (!p) return 1; + p->ctx = pakfire_ctx(pakfire); p->pakfire = pakfire_ref(pakfire); p->nrefs = 1; @@ -222,7 +225,10 @@ static void pakfire_problem_free(struct pakfire_problem* problem) { pakfire_transaction_unref(problem->transaction); if (problem->string) free(problem->string); - pakfire_unref(problem->pakfire); + if (problem->pakfire) + pakfire_unref(problem->pakfire); + if (problem->ctx) + pakfire_ctx_unref(problem->ctx); free(problem); } -- 2.47.2