Allow in-place overwrites when unmounting read-write mounted WIM
authorEric Biggers <ebiggers3@gmail.com>
Tue, 18 Dec 2012 00:22:00 +0000 (18:22 -0600)
committerEric Biggers <ebiggers3@gmail.com>
Tue, 18 Dec 2012 01:48:27 +0000 (19:48 -0600)
commite291204c47c40a230fd0fd10f099cb5f675f72a2
treef55bd2d8c544942c42fbce8c81bbf1c88703a87c
parentf333fd43167a066f0ecf3f239fd2bb0d8525d073
Allow in-place overwrites when unmounting read-write mounted WIM

- Add WIMLIB_UNMOUNT_FLAG_REBUILD and WIMLIB_UNMOUNT_FLAG_RECOMPRESS
- Make lock_wim() set a flag WIMStruct.wim_locked to prevent double-locks
- Maintain the inode list for each image through a read-write mount (not
  strictly necessary yet, but makes sense to keep it correct)
- overwrite_wim_inplace():  Search for new streams by searching directly through
  the lookup table for entries that are not located in the WIM being
  overwritten.
src/add_image.c
src/dentry.c
src/metadata_resource.c
src/mount_image.c
src/wimlib.h
src/wimlib_internal.h
src/write.c