From 251626dd60a085675bf8120c047458312bb21f49 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Fri, 26 Sep 2008 15:37:34 +0200 Subject: [PATCH] Applying Gentoos dosfstools-2.11-verify-double-count-fix.patch from Robin H. Johnson to fix double count of files during verification: * Don't double-count n_files during a verification pass. Bugzilla: http://bugs.gentoo.org/show_bug.cgi?id=99845 Signed-off-by: Daniel Baumann --- dosfsck/dosfsck.c | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/dosfsck/dosfsck.c b/dosfsck/dosfsck.c index 2f5886b..185f17e 100644 --- a/dosfsck/dosfsck.c +++ b/dosfsck/dosfsck.c @@ -84,6 +84,7 @@ int main(int argc,char **argv) { DOS_FS fs; int rw,salvage_files,verify,c; + unsigned n_files_check=0, n_files_verify=0; unsigned long free_clusters; rw = salvage_files = verify = 0; @@ -154,12 +155,15 @@ int main(int argc,char **argv) free_clusters = update_free(&fs); file_unused(); qfree(&mem_queue); + n_files_check = n_files; if (verify) { - printf("Starting verification pass.\n"); - read_fat(&fs); - scan_root(&fs); - reclaim_free(&fs); - qfree(&mem_queue); + n_files = 0; + printf("Starting verification pass.\n"); + read_fat(&fs); + scan_root(&fs); + reclaim_free(&fs); + qfree(&mem_queue); + n_files_verify = n_files; } if (fs_changed()) {