summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJason Woodward2014-07-05 20:12:17 -0400
committerJason Woodward2014-07-05 20:12:17 -0400
commit291741417694abca83b1ea9f2f037ba22f6da9c1 (patch)
treeec279ec5d8674d5909059ec41d464b7e533f74ba
parent09a0a2b341dbf7170134b84e44b1679974ed49a3 (diff)
downloadslapt-get-291741417694abca83b1ea9f2f037ba22f6da9c1.tar.gz
fix conflict/reverse dep resolution when installing an alternative
-rw-r--r--ChangeLog3
-rw-r--r--src/action.c5
2 files changed, 7 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 6615c0f..f3b6ef9 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,4 +1,7 @@
+0.10.2r Jul 05, 2014
+ * fix conflict/reverse dep resolution when installing an alternative
+
0.10.2q Apr 05, 2014
* translation updates
* support fractional installed size from /var/log/packages files
diff --git a/src/action.c b/src/action.c
index 0e9b6c6..5076458 100644
--- a/src/action.c
+++ b/src/action.c
@@ -88,6 +88,10 @@ void slapt_pkg_action_install(const slapt_rc_config *global_config,
slapt_pkg_list_t *conflicts = slapt_is_conflicted(tran,avail_pkgs, installed_pkgs, pkg);
+ /* this comes first so we can pick up that we are installed the package when
+ * checking conflicts */
+ slapt_add_install_to_transaction(tran,pkg);
+
/* if there are conflicts, we schedule the conflicts for removal */
if (conflicts->pkg_count > 0 && global_config->ignore_dep != SLAPT_TRUE) {
unsigned int cindex = 0;
@@ -110,7 +114,6 @@ void slapt_pkg_action_install(const slapt_rc_config *global_config,
}
}
slapt_free_pkg_list(conflicts);
- slapt_add_install_to_transaction(tran,pkg);
} else {
printf(gettext("Excluding %s, use --ignore-dep to override\n"),