weiden@svn.reactos.com wrote:
get the root fcb when creating a file and no parent fcb is returned Modified: trunk/reactos/drivers/fs/vfat/create.c
*Modified: trunk/reactos/drivers/fs/vfat/create.c* --- trunk/reactos/drivers/fs/vfat/create.c 2005-12-03 17:33:41 UTC (rev 19841) +++ trunk/reactos/drivers/fs/vfat/create.c 2005-12-03 18:16:02 UTC (rev 19842) @@ -564,6 +564,11 @@ RequestedDisposition == FILE_SUPERSEDE) { ULONG Attributes;
if (ParentFcb == NULL){ParentFcb = vfatOpenRootFCB (DeviceExt);ASSERT(ParentFcb != NULL);} Attributes = Stack->Parameters.Create.FileAttributes; vfatSplitPathName(&PathNameU, NULL, &FileNameU);@@ -600,7 +605,10 @@
} else {
vfatReleaseFCB (DeviceExt, ParentFcb);
if (ParentFcb){vfatReleaseFCB (DeviceExt, ParentFcb);} return(Status);} }
I think, this change is wrong. If VfatOpenFile returns with an error and without a parent fcb, we have to return the error.
- Hartmut
Hartmut Birr wrote:
I think, this change is wrong. If VfatOpenFile returns with an error and without a parent fcb, we have to return the error.
Well, Filip and I weren't sure about this either. The problem was that the parent fcb was used even in the cases where NULL was returned. Do you want me to revert the patch and make the function fail (what status code?) or would you like to fix it yourself?
- Thomas
Thomas Weidenmueller wrote:
Hartmut Birr wrote:
I think, this change is wrong. If VfatOpenFile returns with an error and without a parent fcb, we have to return the error.
Well, Filip and I weren't sure about this either. The problem was that the parent fcb was used even in the cases where NULL was returned. Do you want me to revert the patch and make the function fail (what status code?) or would you like to fix it yourself?
- Thomas
Changed by r19871.
- Hartmut