mirror of
https://github.com/winfsp/winfsp.git
synced 2025-04-22 16:33:02 -05:00
tst: lock-test: fix mistake in calling GetOverlappedResult when prior operation has returned error
This commit is contained in:
parent
0dba3ffe55
commit
ffded63c56
@ -22,5 +22,5 @@ build_script:
|
||||
|
||||
test_script:
|
||||
- for %%f in ("build\VStudio\build\%CONFIGURATION%\winfsp-*.msi") do start /wait msiexec /i %%f /qn INSTALLLEVEL=1000
|
||||
- build\VStudio\build\%CONFIGURATION%\winfsp-tests-x64.exe -lock*
|
||||
- build\VStudio\build\%CONFIGURATION%\winfsp-tests-x86.exe -lock*
|
||||
- build\VStudio\build\%CONFIGURATION%\winfsp-tests-x64.exe
|
||||
- build\VStudio\build\%CONFIGURATION%\winfsp-tests-x86.exe
|
||||
|
@ -276,14 +276,20 @@ static void lock_overlapped_dotest(ULONG Flags, PWSTR VolPrefix, PWSTR Prefix, U
|
||||
Success = LockFileEx(Handle, LOCKFILE_EXCLUSIVE_LOCK | LOCKFILE_FAIL_IMMEDIATELY, 0,
|
||||
BytesPerSector, 0, &Overlapped);
|
||||
ASSERT(Success || ERROR_IO_PENDING == GetLastError() || ERROR_LOCK_VIOLATION == GetLastError());
|
||||
Success = GetOverlappedResult(Handle, &Overlapped, &BytesTransferred, TRUE);
|
||||
ASSERT(!Success && ERROR_LOCK_VIOLATION == GetLastError());
|
||||
if (ERROR_LOCK_VIOLATION != GetLastError())
|
||||
{
|
||||
Success = GetOverlappedResult(Handle, &Overlapped, &BytesTransferred, TRUE);
|
||||
ASSERT(!Success && ERROR_LOCK_VIOLATION == GetLastError());
|
||||
}
|
||||
|
||||
Overlapped.Offset = 0;
|
||||
Success = WriteFile(Handle, Buffer[0], BytesPerSector, &BytesTransferred, &Overlapped);
|
||||
ASSERT(Success || ERROR_IO_PENDING == GetLastError() || ERROR_LOCK_VIOLATION == GetLastError());
|
||||
Success = GetOverlappedResult(Handle, &Overlapped, &BytesTransferred, TRUE);
|
||||
ASSERT(!Success && ERROR_LOCK_VIOLATION == GetLastError());
|
||||
if (ERROR_LOCK_VIOLATION != GetLastError())
|
||||
{
|
||||
Success = GetOverlappedResult(Handle, &Overlapped, &BytesTransferred, TRUE);
|
||||
ASSERT(!Success && ERROR_LOCK_VIOLATION == GetLastError());
|
||||
}
|
||||
|
||||
Overlapped.Offset = BytesPerSector / 2;
|
||||
Success = UnlockFileEx(Handle, 0, BytesPerSector, 0, &Overlapped);
|
||||
|
Loading…
x
Reference in New Issue
Block a user