Just to humor you, I'll explain the problem. :)
GEEK ALERT
The buggy code:
// How many do we need to delete? Make room for the new backup
unsigned deleteCount = (backupFolders.GetCount() - maxBackupCount) + 1;
First, I missed "int" after "unsigned", but that that's not the problem (does not matter in this case). Let's say we have 10 backups, and the max is 10. After deleting 3 manually, we have 7 backups left. This is the simple math:
// How many do we need to delete? Make room for the new backup
unsigned int deleteCount = (7 - 10) + 1;
Normally, deleteCount would equal -2, but since deleteCount is so-called unsigned, it can't have negative numbers. Instead, deleteCount equals 4294967294. That's why DISE crashed. It tried to delete 4294967294 backups! (; -_-)
END OF GEEK ALERT
Anyway, I fixed it, so please get this release instead of the last one. :)
What's new?
- Fixed a bug present in alpha 22, which deleted all of your backups and then crashed, if you deleted backups manually and then let DISE overwrite your old backup(s).
dise_alpha_23.zip
No comments:
Post a Comment