diff --git a/dlls/ole32/storage32.c b/dlls/ole32/storage32.c index 0a9b1adf314..d3fb0239a04 100644 --- a/dlls/ole32/storage32.c +++ b/dlls/ole32/storage32.c @@ -2959,7 +2959,8 @@ static HRESULT StorageImpl_GrabLocks(StorageImpl *This, DWORD openFlags) hr = StorageImpl_LockRegionSync(This, offset, cb, LOCK_ONLYONCE); /* If the ILockBytes doesn't support locking that's ok. */ - if (FAILED(hr)) return S_OK; + if (hr == STG_E_INVALIDFUNCTION) return S_OK; + else if (FAILED(hr)) return hr; hr = S_OK;