could it be that there is an error/inefficency in your
program (which could easily be eliminated):
i tried what i described in another mail:
- do full backup of dir a
- do incremental backup of dir b (without a)
- do incremental backup of dir a
then the files of dir a are stored _again_, but without
any problems the location-pointer consisting of
disk+backup-filename+"address in file" in the new
DiskDirEntry-struct could be just set to the pointers of
(pointing at) the earlier file version.
the program just had to search the _whole_ list of
filedescriptors (list of DirEntry's) not just the list of the
_last_ backup
Remark:
Fixing this would also improve that _any_ previous
version of a file is recognized as already stored, not just
the last version.
Requirement for easy solution:
DiskDirEntry->BackupFilename is only used as a _pointer
to the location_ of the stored data (and not to decide
which version/part of which backup something is/or
anything?!)
Logged In: YES
user_id=875382
It looks like you are already on the way to a solution. Let me
know if you come up with something.
In your solution there may be a problem with keeping track of
the latest state of the backup. If you do a full restore you
want the state of the latest backup to be restored. The
program always goes to the last version backed up of each
file. If the latest version was not backed up because it was in
some earlier backup, the restore may not pick up the correct
version to restore.