File PackageKit-zypp-initialize-pool.patch of Package PackageKit.16952

From 3efa0c5243c1ee762cee0d21af1052e4cc245f9d Mon Sep 17 00:00:00 2001
From: Jonathan Kang <jonathankang@gnome.org>
Date: Fri, 26 Feb 2021 14:10:48 +0800
Subject: [PATCH] zypp: Make sure pool is initialized at the beginning of some
 methods

Methods include GetDetails, GetFiles and GetUpdateDetail.

https://bugzilla.opensuse.org/show_bug.cgi?id=1180597
---
 backends/zypp/pk-backend-zypp.cpp | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/backends/zypp/pk-backend-zypp.cpp b/backends/zypp/pk-backend-zypp.cpp
index 4941a6b86..6da70348b 100644
--- a/backends/zypp/pk-backend-zypp.cpp
+++ b/backends/zypp/pk-backend-zypp.cpp
@@ -2145,6 +2145,8 @@ backend_get_details_thread (PkBackendJob *job, GVariant *params, gpointer user_d
 		return;
 	}
 
+	zypp_build_pool (zypp, true);
+
 	pk_backend_job_set_status (job, PK_STATUS_ENUM_QUERY);
 
 	for (uint i = 0; package_ids[i]; i++) {
@@ -2633,6 +2635,8 @@ backend_get_update_detail_thread (PkBackendJob *job, GVariant *params, gpointer
 	}
 	pk_backend_job_set_status (job, PK_STATUS_ENUM_QUERY);
 
+	zypp_build_pool (zypp, TRUE);
+
 	for (uint i = 0; package_ids[i]; i++) {
 		sat::Solvable solvable = zypp_get_package_by_id (package_ids[i]);
 		MIL << package_ids[i] << " " << solvable << endl;
@@ -3330,6 +3334,8 @@ backend_get_files_thread (PkBackendJob *job, GVariant *params, gpointer user_dat
 		return;
 	}
 
+	zypp_build_pool (zypp, true);
+
 	for (uint i = 0; package_ids[i]; i++) {
 		pk_backend_job_set_status (job, PK_STATUS_ENUM_QUERY);
 		sat::Solvable solvable = zypp_get_package_by_id (package_ids[i]);
-- 
2.29.2

openSUSE Build Service is sponsored by