aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--NEWS3
-rw-r--r--URPM/Resolve.pm5
2 files changed, 8 insertions, 0 deletions
diff --git a/NEWS b/NEWS
index 9f5286c..ea7e0ec 100644
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,6 @@
+- check selected packages for unsatisfied requires when a promoted package is
+ backtracked and no replacement is found (#57224, Anssi Hannula)
+
Version 3.34 - 24 February 2010
- check for conflicting selected packages before selecting a package (#57224)
diff --git a/URPM/Resolve.pm b/URPM/Resolve.pm
index 3371991..ceeda9f 100644
--- a/URPM/Resolve.pm
+++ b/URPM/Resolve.pm
@@ -646,6 +646,11 @@ sub backtrack_selected {
});
push @$diff_provides, map { +{ name => $_, pkg => $dep->{psel} } } keys %diff_provides_h;
});
+ with_state_unsatisfied_requires($urpm, $db, $state, $dep->{promote}, sub {
+ my ($p) = @_;
+ _set_rejected_from($state, $p, $dep->{psel});
+ disable_selected_and_unrequested_dependencies($urpm, $db, $state, $p);
+ });
}
}