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.

diff --git a/e2fsck/pass2.c b/e2fsck/pass2.c
index f52bc2e..1767d00 100644
--- a/e2fsck/pass2.c
+++ b/e2fsck/pass2.c
@@ -112,8 +112,11 @@
 
 	cd.buf = buf;
 	cd.ctx = ctx;
-	cd.count = 0;
+	cd.count = 1;
 	cd.max = ext2fs_dblist_count(fs->dblist);
+
+	if (ctx->progress)
+		(void) (ctx->progress)(ctx, 2, 0, cd.max);
 	
 	cd.pctx.errcode = ext2fs_dblist_iterate(fs->dblist, check_dir_block,
 						&cd);