mirror of
https://github.com/winfsp/winfsp.git
synced 2025-04-22 08:23:05 -05:00
sys: FspFsvolSetDispositionInformation
return STATUS_FILE_DELETED if file is already deleted
This commit is contained in:
parent
91211f6ccb
commit
c4f994f8f6
@ -1484,7 +1484,7 @@ retry:
|
||||
|
||||
if (FileNode->PosixDelete)
|
||||
{
|
||||
Result = STATUS_ACCESS_DENIED;
|
||||
Result = STATUS_FILE_DELETED;
|
||||
goto unlock_exit;
|
||||
}
|
||||
|
||||
|
@ -943,7 +943,7 @@ static void delete_ex_dotest(ULONG Flags, PWSTR VolPrefix, PWSTR Prefix, ULONG F
|
||||
/* POSIX Semantics / Ignore Readonly */
|
||||
|
||||
Handle0 = CreateFileW(FilePath,
|
||||
GENERIC_READ | GENERIC_WRITE, FILE_SHARE_READ | FILE_SHARE_WRITE | FILE_SHARE_DELETE, 0,
|
||||
GENERIC_READ | GENERIC_WRITE | DELETE, FILE_SHARE_READ | FILE_SHARE_WRITE | FILE_SHARE_DELETE, 0,
|
||||
CREATE_NEW, FILE_ATTRIBUTE_READONLY, 0);
|
||||
ASSERT(INVALID_HANDLE_VALUE != Handle0);
|
||||
|
||||
@ -997,7 +997,7 @@ static void delete_ex_dotest(ULONG Flags, PWSTR VolPrefix, PWSTR Prefix, ULONG F
|
||||
Handle0, &IoStatus,
|
||||
&DispositionInfo, sizeof DispositionInfo,
|
||||
64/*FileDispositionInformationEx*/);
|
||||
ASSERT(STATUS_ACCESS_DENIED == IoStatus.Status);
|
||||
ASSERT(STATUS_FILE_DELETED == IoStatus.Status);
|
||||
|
||||
memset(&DispositionInfo, 0, sizeof DispositionInfo);
|
||||
DispositionInfo.Flags = 1; /* DELETE */
|
||||
@ -1005,7 +1005,7 @@ static void delete_ex_dotest(ULONG Flags, PWSTR VolPrefix, PWSTR Prefix, ULONG F
|
||||
Handle0, &IoStatus,
|
||||
&DispositionInfo, sizeof DispositionInfo,
|
||||
64/*FileDispositionInformationEx*/);
|
||||
ASSERT(STATUS_ACCESS_DENIED == IoStatus.Status);
|
||||
ASSERT(STATUS_FILE_DELETED == IoStatus.Status);
|
||||
|
||||
CloseHandle(Handle0);
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user