Commit a55b9f9
mempool: guard removeProTxKeyChangedConflicts against already-removed entries
The eviction loop dereferenced mapTx.find(txHash) without checking for end().
If two stale provider updates for one masternode form a parent/child chain,
removeRecursive() on the parent also evicts the child, so the child's saved
hash then resolves to mapTx.end() and dereferencing it can crash the node.
This is a pre-existing hazard in the conflict-eviction path (surfaced while
reviewing the shared-masternode changes to this function); guard the lookup and
skip entries already gone.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>1 parent 5495e02 commit a55b9f9
1 file changed
Lines changed: 8 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1065 | 1065 | | |
1066 | 1066 | | |
1067 | 1067 | | |
1068 | | - | |
1069 | | - | |
| 1068 | + | |
| 1069 | + | |
| 1070 | + | |
| 1071 | + | |
| 1072 | + | |
| 1073 | + | |
| 1074 | + | |
| 1075 | + | |
1070 | 1076 | | |
1071 | 1077 | | |
1072 | 1078 | | |
| |||
0 commit comments