summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
8af0ab7)
svn path=/trunk/; revision=19871
ULONG RequestedDisposition, RequestedOptions;
PVFATCCB pCcb;
PVFATFCB pFcb = NULL;
ULONG RequestedDisposition, RequestedOptions;
PVFATCCB pCcb;
PVFATFCB pFcb = NULL;
+ PVFATFCB ParentFcb = NULL;
PWCHAR c, last;
BOOLEAN PagingFileCreate = FALSE;
BOOLEAN Dots;
PWCHAR c, last;
BOOLEAN PagingFileCreate = FALSE;
BOOLEAN Dots;
* fail immediately
*/
if (Status == STATUS_OBJECT_PATH_NOT_FOUND ||
* fail immediately
*/
if (Status == STATUS_OBJECT_PATH_NOT_FOUND ||
- Status == STATUS_INVALID_PARAMETER ||
- Status == STATUS_DELETE_PENDING)
+ Status == STATUS_INVALID_PARAMETER ||
+ Status == STATUS_DELETE_PENDING)
+ if (!NT_SUCCESS(Status) && ParentFcb == NULL)
+ {
+ DPRINT1("VfatOpenFile faild for '%wZ', status %x\n", &PathNameU, Status);
+ return Status;
+ }
/*
* If the file open failed then create the required file
/*
* If the file open failed then create the required file
RequestedDisposition == FILE_SUPERSEDE)
{
ULONG Attributes;
RequestedDisposition == FILE_SUPERSEDE)
{
ULONG Attributes;
- if (ParentFcb == NULL)
- {
- ParentFcb = vfatOpenRootFCB (DeviceExt);
- ASSERT(ParentFcb != NULL);
- }
Attributes = Stack->Parameters.Create.FileAttributes;
vfatSplitPathName(&PathNameU, NULL, &FileNameU);
Attributes = Stack->Parameters.Create.FileAttributes;
vfatSplitPathName(&PathNameU, NULL, &FileNameU);