Let's suppose that I have 5 iotas in my address 23 and I send all of them to Bob. The transaction is taking a while to be confirmed and I decide to reattach it to the tangle, thinking that one of the transactions will be eventually validated (probably the reattached one) and the other one deemed a double-spend (ignored forever). But what happens if in between I receive a new payment in my addres 23, for 5 or more iotas? In that case could both transations (original and reattached) get approved (Bob will end up receiving 10 iotas)?
2 Answers
With the UTXO model he can only get 5i, because your new received iotas are another output and the transaction consumes only the output that was there when you signed it. In IOTA 1.0 he could reattach the transaction and get all 10i or more by reattaching the transaction that many times, but there one shouldn't reuse addresses anyways because of the winternitz one time signatures
As Thoralf already answered, this cannot cause any double spending in the UTXO model, and it cannot cause double spending when you do not reuse addresses either. (When spending only half of the amount on an address, the rest is automatically transferred to another new address).
When analyzing the security model of IOTA, you should also keep in mind that reattaching a transaction does not require resigning the payload, so everybody could do it, not only the sender of the transaction. Therefore it is very important that this action is safe and does not lead to double spending.