summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Kalnischkies <david@kalnischkies.de>2016-06-08 10:56:14 +0200
committerDavid Kalnischkies <david@kalnischkies.de>2016-06-08 13:07:21 +0200
commit4dc619c0435d44a6a03cfda357654d3d76833b68 (patch)
treec889ca117d4ce4fb22987f2be365c3cb89f9ed86
parentab07af708e49c9219940ffd3e20a01c763267e03 (diff)
edsp: if internal is used, keep this decision
It wasn't noticeable before, but now with the (optional) logging it can be observed that we decide in the internal path two times if an internal or external solver should be used (and hence with logging, it is attempted twice), so if we are in the internal path call the internal resolver directly, which means those internal methods need to be public – but we can hide them based on the symbol at least.
-rw-r--r--apt-pkg/algorithms.h5
-rw-r--r--apt-pkg/upgrade.cc6
2 files changed, 5 insertions, 6 deletions
diff --git a/apt-pkg/algorithms.h b/apt-pkg/algorithms.h
index 5b0d8fb29..c1a26587d 100644
--- a/apt-pkg/algorithms.h
+++ b/apt-pkg/algorithms.h
@@ -124,9 +124,6 @@ class pkgProblemResolver /*{{{*/
APT_HIDDEN void MakeScores();
APT_HIDDEN bool DoUpgrade(pkgCache::PkgIterator Pkg);
- APT_HIDDEN bool ResolveInternal(bool const BrokenFix = false);
- APT_HIDDEN bool ResolveByKeepInternal();
-
protected:
bool InstOrNewPolicyBroken(pkgCache::PkgIterator Pkg);
@@ -138,9 +135,11 @@ class pkgProblemResolver /*{{{*/
// Try to intelligently resolve problems by installing and removing packages
bool Resolve(bool BrokenFix = false, OpProgress * const Progress = NULL);
+ APT_HIDDEN bool ResolveInternal(bool const BrokenFix = false);
// Try to resolve problems only by using keep
bool ResolveByKeep(OpProgress * const Progress = NULL);
+ APT_HIDDEN bool ResolveByKeepInternal();
APT_DEPRECATED_MSG("NOOP as MarkInstall enforces not overriding FromUser markings") void InstallProtect();
diff --git a/apt-pkg/upgrade.cc b/apt-pkg/upgrade.cc
index 8ba48e786..c3be9b64f 100644
--- a/apt-pkg/upgrade.cc
+++ b/apt-pkg/upgrade.cc
@@ -115,7 +115,7 @@ static bool pkgDistUpgrade(pkgDepCache &Cache, OpProgress * const Progress)
}
}
- bool const success = Fix.Resolve(false, Progress);
+ bool const success = Fix.ResolveInternal(false);
if (Progress != NULL)
Progress->Done();
return success;
@@ -158,7 +158,7 @@ static bool pkgAllUpgradeNoNewPackages(pkgDepCache &Cache, OpProgress * const Pr
Progress->Progress(50);
// resolve remaining issues via keep
- bool const success = Fix.ResolveByKeep(Progress);
+ bool const success = Fix.ResolveByKeepInternal();
if (Progress != NULL)
Progress->Done();
return success;
@@ -218,7 +218,7 @@ static bool pkgAllUpgradeWithNewPackages(pkgDepCache &Cache, OpProgress * const
Progress->Progress(60);
// resolve remaining issues via keep
- bool const success = Fix.ResolveByKeep(Progress);
+ bool const success = Fix.ResolveByKeepInternal();
if (Progress != NULL)
Progress->Done();
return success;