Hi,

if I read the diff correctly you deleted the line "*pFcb->Attributes =
(Attributes | FILE_ATTRIBUTE_ARCHIVE);" during reverting, which was there
before your changes...

Btw, are you sure that the regressions came direct from your changes? I
suspect that you simply triggered a memory corruption, especially because
the behavior at the kvm-testbot, but not at the vmware-testbot changed...

Best regards,
Michael Fritscher



> Author: ekohl
> Date: Fri May 17 17:52:43 2013
> New Revision: 59026
>
> URL: http://svn.reactos.org/svn/reactos?rev=59026&view=rev
> Log:
> [FASTFAT]
> Reverted revisions 59023, 59022 and 58976.
>
> Modified:
>     trunk/reactos/drivers/filesystems/fastfat/create.c
>
> Modified: trunk/reactos/drivers/filesystems/fastfat/create.c
> URL:
> http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/filesystems/fastfat/create.c?rev=59026&r1=59025&r2=59026&view=diff
> ==============================================================================
> --- trunk/reactos/drivers/filesystems/fastfat/create.c        [iso-8859-1]
> (original)
> +++ trunk/reactos/drivers/filesystems/fastfat/create.c        [iso-8859-1] Fri
> May 17 17:52:43 2013
> @@ -426,7 +426,6 @@
>       BOOLEAN Dots;
>       UNICODE_STRING FileNameU;
>          UNICODE_STRING PathNameU;
> -     ULONG Attributes;
>
>       /* Unpack the various parameters. */
>       Stack = IoGetCurrentIrpStackLocation (Irp);
> @@ -437,9 +436,6 @@
>       FileObject = Stack->FileObject;
>       DeviceExt = DeviceObject->DeviceExtension;
>
> -     Attributes = Stack->Parameters.Create.FileAttributes;
> -     Attributes &= (FILE_ATTRIBUTE_READONLY | FILE_ATTRIBUTE_HIDDEN |
> FILE_ATTRIBUTE_SYSTEM | FILE_ATTRIBUTE_ARCHIVE);
> -
>       /* Check their validity. */
>       if (RequestedOptions & FILE_DIRECTORY_FILE &&
>               RequestedDisposition == FILE_SUPERSEDE)
> @@ -548,9 +544,11 @@
>                   RequestedDisposition == FILE_OVERWRITE_IF ||
>                   RequestedDisposition == FILE_SUPERSEDE)
>               {
> +                     ULONG Attributes;
> +                     Attributes = Stack->Parameters.Create.FileAttributes &
> ~FILE_ATTRIBUTE_NORMAL;
>                       vfatSplitPathName(&PathNameU, NULL, &FileNameU);
>                       Status = VfatAddEntry (DeviceExt, &FileNameU, &pFcb, 
> ParentFcb,
> RequestedOptions,
> -                             (UCHAR)(Attributes | FILE_ATTRIBUTE_ARCHIVE));
> +                             (UCHAR)(Attributes & 
> FILE_ATTRIBUTE_VALID_FLAGS));
>                       vfatReleaseFCB (DeviceExt, ParentFcb);
>                       if (NT_SUCCESS (Status))
>                       {
> @@ -690,12 +688,6 @@
>                   RequestedDisposition == FILE_SUPERSEDE)
>               {
>                          ExAcquireResourceExclusiveLite(&(pFcb->MainResource),
> TRUE);
> -                     if (RequestedDisposition == FILE_OVERWRITE ||
> -                         RequestedDisposition == FILE_OVERWRITE_IF)
> -                             *pFcb->Attributes |= (Attributes | 
> FILE_ATTRIBUTE_ARCHIVE);
> -                     else
> -                             *pFcb->Attributes = (Attributes | 
> FILE_ATTRIBUTE_ARCHIVE);
> -
>                       Status = VfatSetAllocationSizeInformation (FileObject,
>                                                                  pFcb,
>                                                                  DeviceExt,
>
>
>



_______________________________________________
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev

Reply via email to