diff --git a/src/main.cpp b/src/main.cpp index e9debb463..c10113b4f 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -705,11 +705,17 @@ bool IsFinalTx(const CTransaction &tx, int nBlockHeight, int64_t nBlockTime) return(false); // need to prevent pastdating tx } BOOST_FOREACH(const CTxIn& txin, tx.vin) - if (!txin.IsFinal()) + { + if ( txin.nSequence == 0xfffffffe && (int64_t)tx.nLockTime >= LOCKTIME_THRESHOLD && (int64_t)tx.nLockTime > nBlockTime ) + { + + } + else if (!txin.IsFinal()) { printf("non-final txin seq.%x\n",txin.nSequence); return false; } + } return true; }