# MutantHub mutant #4389: Remove BIP30 check on non-coinbase txs
# Repository: bitcoin/bitcoin @ 791173ae952bb07716531dd01a78d70dc3b7c038
# File: src/validation.cpp:2541-2545
# Review: APPROVED; outcome: SURVIVED
--- a/src/validation.cpp
+++ b/src/validation.cpp
@@ -2541,5 +2541,5 @@
-        for (const auto& tx : block.vtx) {
-            for (size_t o = 0; o < tx->vout.size(); o++) {
-                if (view.HaveCoin(COutPoint(tx->GetHash(), o))) {
-                    state.Invalid(BlockValidationResult::BLOCK_CONSENSUS, "bad-txns-BIP30",
-                                  "tried to overwrite transaction");
+        const CTransaction& coinbase{*block.vtx[0]};
+        for (size_t o = 0; o < coinbase.vout.size(); o++) {
+            if (view.HaveCoin(COutPoint(coinbase.GetHash(), o))) {
+                state.Invalid(BlockValidationResult::BLOCK_CONSENSUS, "bad-txns-BIP30",
+                              "tried to overwrite transaction");
