userlibandfileserver/fileserver/sfile/sf_dir.cpp
changeset 243 c7a0ce20c48c
parent 134 95847726fe57
child 299 b5a01337d018
--- a/userlibandfileserver/fileserver/sfile/sf_dir.cpp	Mon Jul 26 10:52:56 2010 +0100
+++ b/userlibandfileserver/fileserver/sfile/sf_dir.cpp	Fri Aug 06 16:34:38 2010 +0100
@@ -116,7 +116,8 @@
 	CFsPlugin* plugin = NULL;
 	//Get the next plugin which is mounted on this drive (IsMounted called in NextPlugin)
 	//Do not check whether we're registered for current operation (in case not registered for EFsDirOpen)
-	while(FsPluginManager::NextPlugin(plugin,(CFsMessageRequest*)aRequest,(TBool)ETrue,(TBool)EFalse)==KErrNone && plugin)
+	FsPluginManager::ReadLockChain();                                      //!Check operation
+	while(FsPluginManager::NextPlugin(plugin,(CFsMessageRequest*)aRequest,(TBool)EFalse)==KErrNone && plugin)
 		{
 		if(plugin->IsRegistered(EFsDirReadOne) ||
 			plugin->IsRegistered(EFsDirReadPacked) ||
@@ -129,6 +130,7 @@
 			break;
 			}
 		}
+	FsPluginManager::UnlockChain();
 	
 	TPtrC8 pH((TUint8*)&h,sizeof(TInt));
 	TRAP(r,aRequest->WriteL(KMsgPtr3,pH))