diff --git a/lib/transaction_dictionary.c b/lib/transaction_dictionary.c index 4ccdec95..169cb652 100644 --- a/lib/transaction_dictionary.c +++ b/lib/transaction_dictionary.c @@ -272,9 +272,14 @@ xbps_transaction_prepare(struct xbps_handle *xhp) for (i = 0; i < cnt; i++) { xbps_dictionary_t pkgd; xbps_string_t str; + const char *tract = NULL; pkgd = xbps_array_get(pkgs, i); str = xbps_dictionary_get(pkgd, "pkgver"); + xbps_dictionary_get_cstring_nocopy(pkgd, "transaction", &tract); + if (strcmp(tract, "remove") == 0) + continue; + assert(xbps_object_type(str) == XBPS_TYPE_STRING); if (!xbps_array_add(edges, str))