Outstanding - it's great to see someone actually doing something constructive!
While it appears that this fix is aimed at staking issues with small amounts, I believe that more fixes are needed. In order for any kind of recovery to be possible, wallet operation will need to be flawless. It cannot be accompanied by any of the following:
- Wait until syncing gets stuck at block 8200 and restart the wallet
- If you try to restart the wallet too soon after you've closed it (before threads have had a chance to exit), you will see a nasty system message about permissions
- If syncing gets stuck, navigate to \Users\[login]\AppData\Roaming\Sync and delete blah blah blah
- Go to the same folder and insert this bootstrap.dat file
All of the above erode confidence. I wish I contribute actual coding instead of just advice, but it's all I have.