summaryrefslogtreecommitdiffstats
path: root/apt-pkg/edsp.cc
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-05-14 19:18:39 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-05-14 19:18:39 +0000
commit55158daa5b13e2f61658a1678288e5848bd2927a (patch)
tree551ec3d16791c4f72e6b7b403094459e7466a548 /apt-pkg/edsp.cc
parentReleasing progress-linux version 2.9.2-0.0~progress7.99u1. (diff)
downloadapt-55158daa5b13e2f61658a1678288e5848bd2927a.tar.xz
apt-55158daa5b13e2f61658a1678288e5848bd2927a.zip
Merging upstream version 2.9.3.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to '')
-rw-r--r--apt-pkg/edsp.cc13
1 files changed, 13 insertions, 0 deletions
diff --git a/apt-pkg/edsp.cc b/apt-pkg/edsp.cc
index a02e400..5894008 100644
--- a/apt-pkg/edsp.cc
+++ b/apt-pkg/edsp.cc
@@ -19,6 +19,7 @@
#include <apt-pkg/pkgsystem.h>
#include <apt-pkg/prettyprinters.h>
#include <apt-pkg/progress.h>
+#include <apt-pkg/solver3.h>
#include <apt-pkg/string_view.h>
#include <apt-pkg/strutl.h>
#include <apt-pkg/tagfile.h>
@@ -765,6 +766,18 @@ static bool CreateDumpFile(char const * const id, char const * const type, FileF
// EDSP::ResolveExternal - resolve problems by asking external for help {{{*/
bool EDSP::ResolveExternal(const char* const solver, pkgDepCache &Cache,
unsigned int const flags, OpProgress *Progress) {
+ if (strcmp(solver, "3.0") == 0)
+ {
+ APT::Solver s(Cache.GetCache(), Cache.GetPolicy());
+ FileFd output;
+ if (not s.FromDepCache(Cache))
+ return false;
+ if (not s.Solve())
+ return false;
+ if (not s.ToDepCache(Cache))
+ return false;
+ return true;
+ }
if (strcmp(solver, "internal") == 0)
{
FileFd output;