diff --git a/src/sys/create.c b/src/sys/create.c index 159887df..913ccc1d 100644 --- a/src/sys/create.c +++ b/src/sys/create.c @@ -488,6 +488,14 @@ static NTSTATUS FspFsvolCreateNoLock( RtlCopyMemory(Request->Buffer + Request->Req.Create.SecurityDescriptor.Offset, SecurityDescriptor, SecurityDescriptorSize); + /* fix FileNode->FileName if we were doing SL_OPEN_TARGET_DIRECTORY */ + if (Request->Req.Create.OpenTargetDirectory) + { + UNICODE_STRING Suffix; + + FspFileNameSuffix(&FileNode->FileName, &FileNode->FileName, &Suffix); + } + return FSP_STATUS_IOQ_POST; } @@ -751,14 +759,6 @@ NTSTATUS FspFsvolCreateComplete( } } - /* fix FileNode->FileName if we were doing SL_OPEN_TARGET_DIRECTORY */ - if (Request->Req.Create.OpenTargetDirectory) - { - UNICODE_STRING Suffix; - - FspFileNameSuffix(&FileNode->FileName, &FileNode->FileName, &Suffix); - } - /* populate the FileNode/FileDesc fields from the Response */ FileNode->UserContext = Response->Rsp.Create.Opened.UserContext; FileNode->IndexNumber = Response->Rsp.Create.Opened.FileInfo.IndexNumber;