@@ -73,12 +73,16 @@ FUZZ_TARGET(rbf, .init = initialize_rbf)
73
73
mtx->vin [0 ].prevout = COutPoint{another_tx.GetHash (), 0 };
74
74
}
75
75
LOCK2 (cs_main, pool.cs );
76
- AddToMempool (pool, ConsumeTxMemPoolEntry (fuzzed_data_provider, another_tx));
76
+ if (!pool.GetIter (another_tx.GetHash ())) {
77
+ AddToMempool (pool, ConsumeTxMemPoolEntry (fuzzed_data_provider, another_tx));
78
+ }
77
79
}
78
80
const CTransaction tx{*mtx};
79
81
if (fuzzed_data_provider.ConsumeBool ()) {
80
82
LOCK2 (cs_main, pool.cs );
81
- AddToMempool (pool, ConsumeTxMemPoolEntry (fuzzed_data_provider, tx));
83
+ if (!pool.GetIter (tx.GetHash ())) {
84
+ AddToMempool (pool, ConsumeTxMemPoolEntry (fuzzed_data_provider, tx));
85
+ }
82
86
}
83
87
{
84
88
LOCK (pool.cs );
@@ -137,6 +141,7 @@ FUZZ_TARGET(package_rbf, .init = initialize_package_rbf)
137
141
mempool_txs.pop_back ();
138
142
break ;
139
143
}
144
+ assert (!pool.GetIter (parent_entry.GetTx ().GetHash ()));
140
145
AddToMempool (pool, parent_entry);
141
146
if (fuzzed_data_provider.ConsumeBool ()) {
142
147
child.vin [0 ].prevout = COutPoint{mempool_txs.back ().GetHash (), 0 };
@@ -149,7 +154,9 @@ FUZZ_TARGET(package_rbf, .init = initialize_package_rbf)
149
154
mempool_txs.pop_back ();
150
155
break ;
151
156
}
152
- AddToMempool (pool, child_entry);
157
+ if (!pool.GetIter (child_entry.GetTx ().GetHash ())) {
158
+ AddToMempool (pool, child_entry);
159
+ }
153
160
154
161
if (fuzzed_data_provider.ConsumeBool ()) {
155
162
pool.PrioritiseTransaction (mempool_txs.back ().GetHash ().ToUint256 (), fuzzed_data_provider.ConsumeIntegralInRange <int32_t >(-100000 , 100000 ));
0 commit comments