From 0b2d7775c5e828652e45829f551352b93890bbc8 Mon Sep 17 00:00:00 2001 From: Panu Matilainen Date: Sat, 17 Jan 2009 14:15:50 +0200 Subject: [PATCH] Make it possible to disable %pre- and %posttrans scriptlets (rhbz#475582) - rpmtransFlags_e is overcrowded, map to "regular" %pre and %post scriptlet behavior for now - split up the transaction flags at some point to permit more precise control --- lib/transaction.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/transaction.c b/lib/transaction.c index 7259d02..9b7fb12 100644 --- a/lib/transaction.c +++ b/lib/transaction.c @@ -1058,8 +1058,8 @@ int rpmtsRun(rpmts ts, rpmps okProbs, rpmprobFilterFlags ignoreSet) /* Run pre-transaction scripts, but only if there are no known - * problems up to this point. */ - if (!((rpmtsFlags(ts) & (RPMTRANS_FLAG_BUILD_PROBS|RPMTRANS_FLAG_TEST)) + * problems up to this point and not disabled otherwise. */ + if (!((rpmtsFlags(ts) & (RPMTRANS_FLAG_BUILD_PROBS|RPMTRANS_FLAG_TEST|RPMTRANS_FLAG_NOPRE)) || (rpmpsNumProblems(ts->probs) && (okProbs == NULL || rpmpsTrim(ts->probs, okProbs))))) { rpmlog(RPMLOG_DEBUG, "running pre-transaction scripts\n"); @@ -1245,7 +1245,7 @@ int rpmtsRun(rpmts ts, rpmps okProbs, rpmprobFilterFlags ignoreSet) /* Actually install and remove packages */ rc = rpmtsProcess(ts); - if (!(rpmtsFlags(ts) & RPMTRANS_FLAG_TEST)) { + if (!(rpmtsFlags(ts) & (RPMTRANS_FLAG_TEST|RPMTRANS_FLAG_NOPOST))) { rpmlog(RPMLOG_DEBUG, "running post-transaction scripts\n"); runTransScripts(ts, RPMTAG_POSTTRANS); } -- 2.7.4