--- a/userlibandfileserver/fileserver/sfile/sf_file.cpp Wed Oct 06 17:13:14 2010 +0100
+++ b/userlibandfileserver/fileserver/sfile/sf_file.cpp Mon Oct 11 17:54:41 2010 +0100
@@ -2772,22 +2772,6 @@
iFile->Close();
}
-void CFileShare::Close()
- {
-
- // Flush the write cache before closing the file share
- // NB If there is any dirty data, then a new request will be allocated which will increase
- // the reference count on this file share, thus preventing it from being deleted untill all
- // data has been flushed
- if (AccessCount() == 1)
- {
- CFileCache* fileCache = File().FileCache();
- if (fileCache)
- fileCache->FlushDirty();
- }
-
- CFsDispatchObject::Close();
- }
/**
@@ -3267,8 +3251,8 @@
{
ASSERT(NoOfClamps() == 0);
drive.SetClampFlag(EFalse);
- if (drive.DismountDeferred())
- r = drive.DeferredDismount();
+ // dismount now if no clients waiting...
+ r = drive.DeferredDismountCheck();
}
return r;