[ros-dev] [ros-diffs] [ekohl] 59026: [FASTFAT] Reverted revisions 59023, 59022 and 58976.

Michael Fritscher michael at fritscher.net
Tue May 21 06:30:39 UTC 2013


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,
>
>
>





More information about the Ros-dev mailing list