summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThierry Vignaud <thierry.vignaud@gmail.com>2015-08-31 07:08:36 -0400
committerThierry Vignaud <thierry.vignaud@gmail.com>2015-08-31 07:08:36 -0400
commit8116d24edf10c8f56355b7af592530a1a830b052 (patch)
treec5f712b0cc992aa9112fce71496a39d9df4acb51
parent33abefb6467db92f88fc4820ee7b0739d1917ef5 (diff)
downloadurpmi-8116d24edf10c8f56355b7af592530a1a830b052.tar
urpmi-8116d24edf10c8f56355b7af592530a1a830b052.tar.gz
urpmi-8116d24edf10c8f56355b7af592530a1a830b052.tar.bz2
urpmi-8116d24edf10c8f56355b7af592530a1a830b052.tar.xz
urpmi-8116d24edf10c8f56355b7af592530a1a830b052.zip
do not break orphan tracking when downgrading
thus fixing unmarking packages as potential orphans when downgrading (mga#16149)
-rw-r--r--NEWS2
-rwxr-xr-xurpmi4
2 files changed, 5 insertions, 1 deletions
diff --git a/NEWS b/NEWS
index ff23a4c6..92c4aa6b 100644
--- a/NEWS
+++ b/NEWS
@@ -1,5 +1,7 @@
- aria2 downloading:
o fix using a proxy without an auth user (mga#11265)
+- library:
+ o fix unmarking packages as potential orphans when downgrading (mga#16149)
- testsuite:
o misc enhancements & cleanups
o fix tests for ignored faillure for %pre{,un}, %pretrans
diff --git a/urpmi b/urpmi
index 786b9e78..f1d088e9 100755
--- a/urpmi
+++ b/urpmi
@@ -583,7 +583,9 @@ if (@to_install && $options{auto_orphans}) {
#- - this also takes care of removing packages from
#- installed-through-deps if the package was first installed as a
#- dep of another package, then removed and then explicitly installed
-urpm::orphans::mark_as_requested($urpm, $state, $test);
+if (!$urpm->{options}{downgrade}) {
+ urpm::orphans::mark_as_requested($urpm, $state, $test);
+}
foreach my $pkg (@to_install) {
#- reflect change in flag usage, now requested is set whatever a package is selected or not,