Too Long; Didn't Read
The 'selfdestruct(address)` function removes all bytecode from the contract and sends all ether stored to the specified address and sends ether. If this specified address is also a contract, no functions (including the fallback) get called. This vulnerability arises from the misuse of `this.balance` function.