Vincent Povirk : ole32: Don' t use real synchronous locks for storage synchronization.

Alexandre Julliard julliard at wine.codeweavers.com
Wed Mar 11 10:00:42 CDT 2015


Module: wine
Branch: master
Commit: c8791edbdf58adcb5b83c82f30aec89edfb32438
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=c8791edbdf58adcb5b83c82f30aec89edfb32438

Author: Vincent Povirk <vincent at codeweavers.com>
Date:   Tue Mar 10 14:37:09 2015 -0500

ole32: Don't use real synchronous locks for storage synchronization.

---

 dlls/ole32/filelockbytes.c | 18 ------------------
 dlls/ole32/storage32.c     |  5 -----
 dlls/ole32/storage32.h     |  2 --
 3 files changed, 25 deletions(-)

diff --git a/dlls/ole32/filelockbytes.c b/dlls/ole32/filelockbytes.c
index 7dc4843..594da1b 100644
--- a/dlls/ole32/filelockbytes.c
+++ b/dlls/ole32/filelockbytes.c
@@ -346,24 +346,6 @@ static HRESULT WINAPI FileLockBytesImpl_LockRegion(ILockBytes* iface,
     return get_lock_error();
 }
 
-HRESULT FileLockBytesImpl_LockRegionSync(ILockBytes* iface,
-    ULARGE_INTEGER libOffset, ULARGE_INTEGER cb)
-{
-    FileLockBytesImpl* This = impl_from_ILockBytes(iface);
-    OVERLAPPED ol;
-
-    if (iface->lpVtbl != &FileLockBytesImpl_Vtbl)
-        return E_NOTIMPL;
-
-    ol.hEvent = 0;
-    ol.u.s.Offset = libOffset.u.LowPart;
-    ol.u.s.OffsetHigh = libOffset.u.HighPart;
-
-    if (LockFileEx(This->hfile, LOCKFILE_EXCLUSIVE_LOCK, 0, cb.u.LowPart, cb.u.HighPart, &ol))
-        return S_OK;
-    return get_lock_error();
-}
-
 static HRESULT WINAPI FileLockBytesImpl_UnlockRegion(ILockBytes* iface,
     ULARGE_INTEGER libOffset, ULARGE_INTEGER cb, DWORD dwLockType)
 {
diff --git a/dlls/ole32/storage32.c b/dlls/ole32/storage32.c
index 5e434e0..0a9b1ad 100644
--- a/dlls/ole32/storage32.c
+++ b/dlls/ole32/storage32.c
@@ -2876,11 +2876,6 @@ static HRESULT StorageImpl_LockRegionSync(StorageImpl *This, ULARGE_INTEGER offs
     HRESULT hr;
     int delay = 0;
 
-    /* if it's a FileLockBytesImpl use LockFileEx in blocking mode */
-    if (SUCCEEDED(FileLockBytesImpl_LockRegionSync(This->lockBytes, offset, cb)))
-        return S_OK;
-
-    /* otherwise we have to fake it based on an async lock */
     do
     {
         hr = ILockBytes_LockRegion(This->lockBytes, offset, cb, dwLockType);
diff --git a/dlls/ole32/storage32.h b/dlls/ole32/storage32.h
index a49add9..e03bf31 100644
--- a/dlls/ole32/storage32.h
+++ b/dlls/ole32/storage32.h
@@ -159,8 +159,6 @@ struct DirEntry
 
 HRESULT FileLockBytesImpl_Construct(HANDLE hFile, DWORD openFlags, LPCWSTR pwcsName, ILockBytes **pLockBytes) DECLSPEC_HIDDEN;
 
-HRESULT FileLockBytesImpl_LockRegionSync(ILockBytes* iface, ULARGE_INTEGER libOffset, ULARGE_INTEGER cb) DECLSPEC_HIDDEN;
-
 /*************************************************************************
  * Ole Convert support
  */




More information about the wine-cvs mailing list