diff --git a/e2fsck/super.c b/e2fsck/super.c index 2202967..76390af 100644 --- a/e2fsck/super.c +++ b/e2fsck/super.c @@ -821,9 +821,9 @@ void check_super_block(e2fsck_t ctx) */ if (fs->super->s_mtime > (__u32) ctx->now) { pctx.num = fs->super->s_mtime; - problem = PR_0_FUTURE_SB_LAST_MOUNT; - if (fs->super->s_mtime <= (__u32) ctx->now + ctx->time_fudge) - problem = PR_0_FUTURE_SB_LAST_MOUNT_FUDGED; + problem = PR_0_FUTURE_SB_LAST_MOUNT_FUDGED; + if (ctx->time_fudge && fs->super->s_mtime > (__u32) ctx->now + ctx->time_fudge) + problem = PR_0_FUTURE_SB_LAST_MOUNT; if (fix_problem(ctx, problem, &pctx)) { fs->super->s_mtime = ctx->now; ext2fs_mark_super_dirty(fs); @@ -831,9 +831,9 @@ void check_super_block(e2fsck_t ctx) } if (fs->super->s_wtime > (__u32) ctx->now) { pctx.num = fs->super->s_wtime; - problem = PR_0_FUTURE_SB_LAST_WRITE; - if (fs->super->s_wtime <= (__u32) ctx->now + ctx->time_fudge) - problem = PR_0_FUTURE_SB_LAST_MOUNT_FUDGED; + problem = PR_0_FUTURE_SB_LAST_WRITE_FUDGED; + if (ctx->time_fudge && fs->super->s_wtime > (__u32) ctx->now + ctx->time_fudge) + problem = PR_0_FUTURE_SB_LAST_WRITE; if (fix_problem(ctx, problem, &pctx)) { fs->super->s_wtime = ctx->now; ext2fs_mark_super_dirty(fs);