diff --git a/lib/transaction_dictionary.c b/lib/transaction_dictionary.c index 169cb652..fa05fb86 100644 --- a/lib/transaction_dictionary.c +++ b/lib/transaction_dictionary.c @@ -315,6 +315,12 @@ xbps_transaction_prepare(struct xbps_handle *xhp) array = xbps_dictionary_get(xhp->transd, "conflicts"); if (xbps_array_count(array)) return EAGAIN; + /* + * Check for unresolved shared libraries. + */ + if (xbps_transaction_shlibs(xhp, pkgs, + xbps_dictionary_get(xhp->transd, "missing_shlibs"))) + return ENOEXEC; /* * Check for packages to be replaced. */ @@ -323,12 +329,6 @@ xbps_transaction_prepare(struct xbps_handle *xhp) xhp->transd = NULL; return rv; } - /* - * Check for unresolved shared libraries. - */ - if (xbps_transaction_shlibs(xhp, pkgs, xbps_dictionary_get(xhp->transd, "missing_shlibs"))) - return ENOEXEC; - /* * Add transaction stats for total download/installed size, * number of packages to be installed, updated, configured