[pacman-dev] [PATCH] pacman: list all unknown targets on removal operation

Allan McRae allan at archlinux.org
Sat Dec 10 05:10:59 EST 2011


On a removal operation, pacman currently reports an error for the
package that is not found in the database and then exists.  Adjust
so that all unknown packages are reported.

Before:
> pacman -R foo bar
error: 'foo': target not found

After:
> pacman -R foo bar
error: 'foo': target not found
error: 'bar': target not found

Signed-off-by: Allan McRae <allan at archlinux.org>
---
 src/pacman/remove.c |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)

diff --git a/src/pacman/remove.c b/src/pacman/remove.c
index f56c1ec..b6da7c3 100644
--- a/src/pacman/remove.c
+++ b/src/pacman/remove.c
@@ -104,10 +104,13 @@ int pacman_remove(alpm_list_t *targets)
 		}
 		if(remove_target(targ) == -1) {
 			retval = 1;
-			goto cleanup;
 		}
 	}
 
+	if(retval == 1) {
+		goto cleanup;
+	}
+
 	/* Step 2: prepare the transaction based on its type, targets and flags */
 	if(alpm_trans_prepare(config->handle, &data) == -1) {
 		alpm_errno_t err = alpm_errno(config->handle);
-- 
1.7.8



More information about the pacman-dev mailing list