From: Michael Tremer Date: Sat, 1 May 2021 13:33:03 +0000 (+0000) Subject: transaction: Reload database after finishing transaction X-Git-Tag: 0.9.28~1285^2~163 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=2bfcf0bf6e7caf674ffb96e1ccde96e7cc930e3e;p=pakfire.git transaction: Reload database after finishing transaction Signed-off-by: Michael Tremer --- diff --git a/src/libpakfire/transaction.c b/src/libpakfire/transaction.c index fe143d5c4..0e05873d8 100644 --- a/src/libpakfire/transaction.c +++ b/src/libpakfire/transaction.c @@ -745,6 +745,7 @@ static int pakfire_transaction_open_archives(struct pakfire_transaction* transac } PAKFIRE_EXPORT int pakfire_transaction_run(struct pakfire_transaction* transaction) { + PakfireRepo repo = NULL; struct pakfire_db* db; int r; @@ -783,8 +784,18 @@ PAKFIRE_EXPORT int pakfire_transaction_run(struct pakfire_transaction* transacti DEBUG(transaction->pakfire, "The transaction has finished successfully\n"); + // Reload database for next transaction + + repo = pakfire_get_installed_repo(transaction->pakfire); + if (!repo) + goto ERROR; + + // Reload the database + r = pakfire_db_load(db, repo); + ERROR: - // Free the database + if (repo) + pakfire_repo_unref(repo); pakfire_db_unref(db); return r;