From 060d06d2f7f93ebc2d3af6a0846f06b2f7d38c3a Mon Sep 17 00:00:00 2001
From: Andrew Gregory <andrew.gregory.8@gmail.com>
Date: Mon, 5 May 2014 22:34:15 -0400
Subject: remove.c: downgrade TRANS_DUP_TARGET to warning

Matches the behavior for sync packages.

Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
---
 src/pacman/remove.c | 12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)

(limited to 'src')

diff --git a/src/pacman/remove.c b/src/pacman/remove.c
index 933e6f72..38ad2a29 100644
--- a/src/pacman/remove.c
+++ b/src/pacman/remove.c
@@ -43,9 +43,15 @@ static int remove_target(const char *target)
 
 	if((pkg = alpm_db_get_pkg(db_local, target)) != NULL) {
 		if(alpm_remove_pkg(config->handle, pkg) == -1) {
-			pm_printf(ALPM_LOG_ERROR, "'%s': %s\n", target,
-					alpm_strerror(alpm_errno(config->handle)));
-			return -1;
+			alpm_errno_t err = alpm_errno(config->handle);
+			if(err == ALPM_ERR_TRANS_DUP_TARGET) {
+				/* just skip duplicate targets */
+				pm_printf(ALPM_LOG_WARNING, _("skipping target: %s\n"), target);
+				return 0;
+			} else {
+				pm_printf(ALPM_LOG_ERROR, "'%s': %s\n", target, alpm_strerror(err));
+				return -1;
+			}
 		}
 		config->explicit_removes = alpm_list_add(config->explicit_removes, pkg);
 		return 0;
-- 
cgit v1.2.3-70-g09d2