e2fsprogs/lib
Theodore Ts'o beb388a473 libext2fs: fix block iterator for extents when truncating inodes
When e2fsck uses the block iterator to release the blocks in an
extent-mapped inode, when the last block in an extent is removed, the
current extent has been removed and the extent cursor is now pointing
at the next inode.  But the block iterator code doesn't know that.  So
when it tries to go the next extent, it will end up skipping an
extent, and so the inode will be incompletely truncated.

The fix is to go to the next extent before calling the callback
function for the current extent.  This way, regardless of whether the
current extent gets removed, the extent cursor is still pointing at
the right place.

Reported-by: Andreas Dilger <adilger@whamcloud.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
2012-06-12 01:34:10 -04:00
..
blkid Change pkg-config files so that both <et/com_err.h> and <com_err.h> work 2012-05-14 12:45:54 -04:00
e2p libe2p: teach e2p_jrnl_feature2string() about the 64-bit journal feature 2012-05-21 10:59:01 -04:00
et Change pkg-config files so that both <et/com_err.h> and <com_err.h> work 2012-05-14 12:45:54 -04:00
ext2fs libext2fs: fix block iterator for extents when truncating inodes 2012-06-12 01:34:10 -04:00
quota libquota: remove unnecessary definitions 2012-06-04 12:51:55 -04:00
ss Change pkg-config files so that both <et/com_err.h> and <com_err.h> work 2012-05-14 12:45:54 -04:00
uuid Change pkg-config files so that both <et/com_err.h> and <com_err.h> work 2012-05-14 12:45:54 -04:00
Makefile.bsd-lib Include LDFLAGS when building BSD libraries 2012-05-11 22:21:08 -04:00
Makefile.checker Add configure options --enable-symlink-build and --enable-symlink-install 2010-05-17 19:21:42 -04:00
Makefile.darwin-lib Add configure options --enable-symlink-build and --enable-symlink-install 2010-05-17 19:21:42 -04:00
Makefile.elf-lib Teach build system to install relative symlinks if requested 2012-05-12 23:34:33 -04:00
Makefile.library Add configure options --enable-symlink-build and --enable-symlink-install 2010-05-17 19:21:42 -04:00
Makefile.profile Add configure options --enable-symlink-build and --enable-symlink-install 2010-05-17 19:21:42 -04:00
Makefile.solaris-lib Add configure options --enable-symlink-build and --enable-symlink-install 2010-05-17 19:21:42 -04:00
config.h.in libquota: remove quota_is_on() which was the last user of quotactl() 2012-05-28 10:38:06 -04:00
dirpaths.h.in Shorten compile commands run by the build system 2011-09-18 17:34:37 -04:00
fpopen.c Shorten compile commands run by the build system 2011-09-18 17:34:37 -04:00