Assume I'm using the original client to receive payments. Is the following scenario possible?
My wallet gets notified of unconfirmed transaction with id 12 in which one of the outputs is an address that belongs to me.
Someone changes the id of the transaction to 13 and relays it to the miner who finds the next block.
My wallet gets notified of block that contains transaction with id 13 in which one of the outputs is an address that belongs to me.
Transaction with id 13 gets 6 confirmations but transaction with 12 gets stuck in my wallet as an unconfirmed transaction.
If I'm showing my customers their unconfirmed transactions, then the customer will see a confirmed transaction with id 13 and an unconfirmed transaction with id 12. Is that correct? Or will QT automatically delete the first transaction?
What can I do to prevent this?
removeConflictschecks memory pool for conflicting inputs here.