summaryrefslogtreecommitdiff
path: root/e2fsck/pass3.c
diff options
context:
space:
mode:
authorTheodore Ts'o <tytso@mit.edu>1998-08-01 04:18:06 +0000
committerTheodore Ts'o <tytso@mit.edu>1998-08-01 04:18:06 +0000
commitf75c28de4731c2cd09f6ca1a23e25c968a1edc2f (patch)
treef880e8d7e8b368134ec254303d904616543be47c /e2fsck/pass3.c
parent91d6d486d259b6eb08e4999025b9ef2b097d3495 (diff)
downloade2fsprogs-f75c28de4731c2cd09f6ca1a23e25c968a1edc2f.tar.gz
ChangeLog, e2fsck.c, pass2.c, pass3.c, unix.c:
pass2.c (e2fsck_pass2): Fix the progress accounting so that we get to 100%. pass3.c (e2fsck_pass3): Change progress accounting to be consistent with the other e2fsck passes. e2fsck.c (e2fsck_run): At the end of each pass, call the progress function with the pass number set to zero. unix.c (e2fsck_update_progress): If the pass number is zero, ignore the call, since that indicates that we just want to deallocate any progress structures. emptydir.c: Commit partially done file. ChangeLog, badblocks.c: badblocks.c (ext2fs_badblocks_list_add): Use a bigger increment than 10 blocks when we need to expand the size of the badblocks list.
Diffstat (limited to 'e2fsck/pass3.c')
-rw-r--r--e2fsck/pass3.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/e2fsck/pass3.c b/e2fsck/pass3.c
index 733819ee..c87ebd9c 100644
--- a/e2fsck/pass3.c
+++ b/e2fsck/pass3.c
@@ -110,8 +110,12 @@ void e2fsck_pass3(e2fsck_t ctx)
ext2fs_mark_inode_bitmap(inode_done_map, EXT2_ROOT_INO);
max = e2fsck_get_num_dirinfo(ctx);
- count = 0;
+ count = 1;
+ if (ctx->progress)
+ if ((ctx->progress)(ctx, 3, 0, max))
+ goto abort_exit;
+
for (i=0; (dir = e2fsck_dir_info_iter(ctx, &i)) != 0;) {
if (ctx->progress)
if ((ctx->progress)(ctx, 3, count++, max))
@@ -119,9 +123,6 @@ void e2fsck_pass3(e2fsck_t ctx)
if (ext2fs_test_inode_bitmap(ctx->inode_dir_map, dir->ino))
check_directory(ctx, dir, &pctx);
}
- if (ctx->progress)
- if ((ctx->progress)(ctx, 3, max, max))
- goto abort_exit;
abort_exit:
e2fsck_free_dir_info(ctx);