59 lines
1.9 KiB
Diff
59 lines
1.9 KiB
Diff
From 744a95e49b6f29aa65bc5b28e0e821c38c481581 Mon Sep 17 00:00:00 2001
|
|
From: Jaroslav Mracek <jmracek@redhat.com>
|
|
Date: Fri, 19 Oct 2018 15:44:39 +0200
|
|
Subject: [PATCH] Relocate ModuleContainer save hook (RhBug:1632518)
|
|
|
|
---
|
|
libdnf/dnf-context.cpp | 5 +----
|
|
libdnf/dnf-transaction.cpp | 5 +++++
|
|
2 files changed, 6 insertions(+), 4 deletions(-)
|
|
|
|
diff --git a/libdnf/dnf-context.cpp b/libdnf/dnf-context.cpp
|
|
index 141af3a..db1741c 100644
|
|
--- a/libdnf/dnf-context.cpp
|
|
+++ b/libdnf/dnf-context.cpp
|
|
@@ -1879,10 +1879,7 @@ dnf_context_run(DnfContext *context, GCancellable *cancellable, GError **error)
|
|
error);
|
|
if (!ret)
|
|
return FALSE;
|
|
- auto moduleContainer = dnf_sack_get_module_container(priv->sack);
|
|
- if (moduleContainer) {
|
|
- moduleContainer->save();
|
|
- }
|
|
+
|
|
/* this sack is no longer valid */
|
|
g_object_unref(priv->sack);
|
|
priv->sack = NULL;
|
|
diff --git a/libdnf/dnf-transaction.cpp b/libdnf/dnf-transaction.cpp
|
|
index 5c078a0..0d948d7 100644
|
|
--- a/libdnf/dnf-transaction.cpp
|
|
+++ b/libdnf/dnf-transaction.cpp
|
|
@@ -38,12 +38,14 @@
|
|
#include "dnf-package.h"
|
|
#include "dnf-rpmts.h"
|
|
#include "dnf-sack.h"
|
|
+#include "dnf-sack-private.hpp"
|
|
#include "dnf-transaction.h"
|
|
#include "dnf-types.h"
|
|
#include "dnf-utils.h"
|
|
#include "hy-query.h"
|
|
#include "hy-util-private.hpp"
|
|
|
|
+#include "module/ModulePackageContainer.hpp"
|
|
#include "transaction/Swdb.hpp"
|
|
#include "transaction/Transformer.hpp"
|
|
#include "utils/bgettext/bgettext-lib.h"
|
|
@@ -1435,6 +1437,9 @@ dnf_transaction_commit(DnfTransaction *transaction, HyGoal goal, DnfState *state
|
|
goto out;
|
|
}
|
|
|
|
+ if (auto moduleContainer = dnf_sack_get_module_container(dnf_context_get_sack(priv->context)))
|
|
+ moduleContainer->save();
|
|
+
|
|
/* all sacks are invalid now */
|
|
dnf_context_invalidate_full(priv->context,
|
|
"transaction performed",
|
|
--
|
|
libgit2 0.26.7
|
|
|