From 10ba6369871c4301f3a976eef52c025098a1391a Mon Sep 17 00:00:00 2001 From: Aaron Griffin Date: Wed, 4 Apr 2007 04:43:24 +0000 Subject: * Fix FS#6798 - there is no reason to fail on a duplicate removal target Added a pactest case for this ("-R foo foo foo foo foo" should do what is expected) --- lib/libalpm/trans.c | 3 ++- pactest/tests/remove001.py | 10 ++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) create mode 100644 pactest/tests/remove001.py diff --git a/lib/libalpm/trans.c b/lib/libalpm/trans.c index 1198292f..009ec7f1 100644 --- a/lib/libalpm/trans.c +++ b/lib/libalpm/trans.c @@ -135,7 +135,8 @@ int _alpm_trans_addtarget(pmtrans_t *trans, char *target) ASSERT(target != NULL, RET_ERR(PM_ERR_WRONG_ARGS, -1)); if(alpm_list_find_str(trans->targets, target)) { - RET_ERR(PM_ERR_TRANS_DUP_TARGET, -1); + return(0); + //RET_ERR(PM_ERR_TRANS_DUP_TARGET, -1); } switch(trans->type) { diff --git a/pactest/tests/remove001.py b/pactest/tests/remove001.py new file mode 100644 index 00000000..809bfdb7 --- /dev/null +++ b/pactest/tests/remove001.py @@ -0,0 +1,10 @@ +# If someone else can come up with a better name, please do so +self.description = "Remove a package listed 5 times" + +p = pmpkg("foo") +self.addpkg2db("local", p) + +self.args = "-R " + "foo "*5 + +self.addrule("PACMAN_RETCODE=0") +self.addrule("!PKG_EXISTS=foo") -- cgit v1.2.3-70-g09d2