[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    [discover/Plasma/5.12] libdiscover/backends/PackageKitBackend: Resolve all packages that have been m
From:       Aleix Pol <null () kde ! org>
Date:       2018-05-18 14:27:03
Message-ID: E1fJgLX-0002xo-Nr () code ! kde ! org
[Download RAW message or body]

Git commit 82f69cffc8ff52fb567de70b81e4f3a06f865525 by Aleix Pol.
Committed on 18/05/2018 at 14:25.
Pushed by apol into branch 'Plasma/5.12'.

Resolve all packages that have been modified by the transaction

PackageKit dnf backend doesn't resolve the different packages in the
transaction as finished so they were not detected as changed.

BUG: 394388

M  +6    -4    libdiscover/backends/PackageKitBackend/PKTransaction.cpp

https://commits.kde.org/discover/82f69cffc8ff52fb567de70b81e4f3a06f865525

diff --git a/libdiscover/backends/PackageKitBackend/PKTransaction.cpp \
b/libdiscover/backends/PackageKitBackend/PKTransaction.cpp index ee6e7bff..135c628c \
                100644
--- a/libdiscover/backends/PackageKitBackend/PKTransaction.cpp
+++ b/libdiscover/backends/PackageKitBackend/PKTransaction.cpp
@@ -210,13 +210,15 @@ void \
PKTransaction::packageResolved(PackageKit::Transaction::Info info, const QS  void \
PKTransaction::submitResolve()  {
     QStringList needResolving;
-    const auto pkgids = \
                m_newPackageStates.value(PackageKit::Transaction::InfoFinished);
-    foreach(const auto pkgid, pkgids) {
-        needResolving += PackageKit::Daemon::packageName(pkgid);
+    foreach(const auto &pkgids, m_newPackageStates) {
+        foreach(const auto &pkgid, pkgids) {
+            needResolving += PackageKit::Daemon::packageName(pkgid);
+        }
     }
-    const auto backend = qobject_cast<PackageKitBackend*>(resource()->backend());
 
     if (!needResolving.isEmpty()) {
+        needResolving.removeDuplicates();
+        const auto backend = \
qobject_cast<PackageKitBackend*>(resource()->backend());  \
backend->clearPackages(needResolving);  backend->resolvePackages(needResolving);
     }


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic