summaryrefslogtreecommitdiff
path: root/apt-pkg
diff options
context:
space:
mode:
Diffstat (limited to 'apt-pkg')
-rw-r--r--apt-pkg/solver3.cc7
1 files changed, 7 insertions, 0 deletions
diff --git a/apt-pkg/solver3.cc b/apt-pkg/solver3.cc
index b97e3b694..3e2f53a26 100644
--- a/apt-pkg/solver3.cc
+++ b/apt-pkg/solver3.cc
@@ -956,6 +956,13 @@ bool APT::Solver::Pop()
_error->Discard();
+ // Assume() actually failed to enqueue anything, abort here
+ if (choices.back() == solved.size())
+ {
+ choices.pop_back();
+ return true;
+ }
+
assert(choices.back() < solved.size());
int itemsToUndo = solved.size() - choices.back();
auto choice = solved[choices.back()].assigned;