From 73961f84b142e72eccd614f805e45094d71ae0e3 Mon Sep 17 00:00:00 2001 From: Matt Wu Date: Tue, 13 Sep 2016 23:47:13 +0800 Subject: FIXME: always grab Vcb->MainResource before syncing --- Ext3Fsd/ext3/recover.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/Ext3Fsd/ext3/recover.c b/Ext3Fsd/ext3/recover.c index d85c0d1..ff3e07e 100644 --- a/Ext3Fsd/ext3/recover.c +++ b/Ext3Fsd/ext3/recover.c @@ -106,9 +106,12 @@ Ext2RecoverJournal( journal_t * journal = NULL; struct ext3_super_block *esb; + ExAcquireResourceExclusiveLite(&Vcb->MainResource, TRUE); + /* check journal inode number */ if (!Ext2CheckJournal(Vcb, &jNo)) { - return -1; + rc = -1; + goto errorout; } /* allocate journal Mcb */ @@ -166,5 +169,7 @@ errorout: Ext2FreeMcb(Vcb, jcb); } + ExReleaseResourceLite(&Vcb->MainResource); + return rc; } -- cgit v1.2.3