diff --git a/reactos/drivers/fs/vfat/blockdev.c b/reactos/drivers/fs/vfat/blockdev.c index 02b731f9db3..937bb347303 100644 --- a/reactos/drivers/fs/vfat/blockdev.c +++ b/reactos/drivers/fs/vfat/blockdev.c @@ -11,7 +11,9 @@ #include +#ifndef NDEBUG #define NDEBUG +#endif #include #include "vfat.h" diff --git a/reactos/drivers/fs/vfat/cleanup.c b/reactos/drivers/fs/vfat/cleanup.c index 44fc5645ccd..93104e2fbb7 100644 --- a/reactos/drivers/fs/vfat/cleanup.c +++ b/reactos/drivers/fs/vfat/cleanup.c @@ -1,4 +1,4 @@ -/* $Id: cleanup.c,v 1.11 2003/02/13 22:24:16 hbirr Exp $ +/* $Id: cleanup.c,v 1.12 2003/07/24 19:00:42 chorns Exp $ * * COPYRIGHT: See COPYING in the top level directory * PROJECT: ReactOS kernel @@ -11,7 +11,9 @@ #include +#ifndef NDEBUG #define NDEBUG +#endif #include #include "vfat.h" @@ -61,7 +63,7 @@ NTSTATUS VfatCleanup (PVFAT_IRP_CONTEXT IrpContext) { NTSTATUS Status; - DPRINT("VfatCleanup(DeviceObject %x, Irp %x)\n", DeviceObject, Irp); + DPRINT("VfatCleanup(DeviceObject %x, Irp %x)\n", IrpContext->DeviceObject, IrpContext->Irp); if (IrpContext->DeviceObject == VfatGlobalData->DeviceObject) { @@ -69,7 +71,8 @@ NTSTATUS VfatCleanup (PVFAT_IRP_CONTEXT IrpContext) goto ByeBye; } - if (!ExAcquireResourceExclusiveLite (&IrpContext->DeviceExt->DirResource, IrpContext->Flags & IRPCONTEXT_CANWAIT)) + if (!ExAcquireResourceExclusiveLite (&IrpContext->DeviceExt->DirResource, + (BOOLEAN)(IrpContext->Flags & IRPCONTEXT_CANWAIT))) { return VfatQueueRequest (IrpContext); } diff --git a/reactos/drivers/fs/vfat/close.c b/reactos/drivers/fs/vfat/close.c index 3980a9db6bf..668107e0f84 100644 --- a/reactos/drivers/fs/vfat/close.c +++ b/reactos/drivers/fs/vfat/close.c @@ -1,4 +1,4 @@ -/* $Id: close.c,v 1.18 2003/06/07 11:34:36 chorns Exp $ +/* $Id: close.c,v 1.19 2003/07/24 19:00:42 chorns Exp $ * * COPYRIGHT: See COPYING in the top level directory * PROJECT: ReactOS kernel @@ -11,7 +11,9 @@ #include +#ifndef NDEBUG #define NDEBUG +#endif #include #include "vfat.h" @@ -84,7 +86,7 @@ NTSTATUS VfatClose (PVFAT_IRP_CONTEXT IrpContext) { NTSTATUS Status; - DPRINT ("VfatClose(DeviceObject %x, Irp %x)\n", DeviceObject, Irp); + DPRINT ("VfatClose(DeviceObject %x, Irp %x)\n", IrpContext->DeviceObject, IrpContext->Irp); if (IrpContext->DeviceObject == VfatGlobalData->DeviceObject) { diff --git a/reactos/drivers/fs/vfat/create.c b/reactos/drivers/fs/vfat/create.c index 13b46193510..1a3ee3a2ed9 100644 --- a/reactos/drivers/fs/vfat/create.c +++ b/reactos/drivers/fs/vfat/create.c @@ -16,7 +16,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ -/* $Id: create.c,v 1.61 2003/07/09 19:59:21 hbirr Exp $ +/* $Id: create.c,v 1.62 2003/07/24 19:00:42 chorns Exp $ * * PROJECT: ReactOS kernel * FILE: services/fs/vfat/create.c @@ -31,7 +31,9 @@ #include #include +#ifndef NDEBUG #define NDEBUG +#endif #include #include "vfat.h" @@ -185,7 +187,6 @@ FindFile (PDEVICE_EXTENSION DeviceExt, ULONG len; ULONG DirIndex; ULONG FirstCluster; - ULONG Read; BOOL isRoot; PVOID Context = NULL; PVOID Page; @@ -609,7 +610,7 @@ VfatCreateFile (PDEVICE_OBJECT DeviceObject, PIRP Irp) ULONG Attributes; Attributes = Stack->Parameters.Create.FileAttributes; Status = VfatAddEntry (DeviceExt, FileObject, RequestedOptions, - Attributes & FILE_ATTRIBUTE_VALID_FLAGS); + (UCHAR)(Attributes & FILE_ATTRIBUTE_VALID_FLAGS)); if (NT_SUCCESS (Status)) { pFcb = FileObject->FsContext; @@ -769,7 +770,7 @@ NTSTATUS VfatCreate (PVFAT_IRP_CONTEXT IrpContext) IrpContext->Irp->IoStatus.Status = Status; IoCompleteRequest (IrpContext->Irp, - NT_SUCCESS(Status) ? IO_DISK_INCREMENT : IO_NO_INCREMENT); + (CCHAR)(NT_SUCCESS(Status) ? IO_DISK_INCREMENT : IO_NO_INCREMENT)); VfatFreeIrpContext(IrpContext); return(Status); } diff --git a/reactos/drivers/fs/vfat/dir.c b/reactos/drivers/fs/vfat/dir.c index 5db7131e265..3f6baf34823 100644 --- a/reactos/drivers/fs/vfat/dir.c +++ b/reactos/drivers/fs/vfat/dir.c @@ -1,5 +1,5 @@ /* - * $Id: dir.c,v 1.28 2003/02/13 22:24:16 hbirr Exp $ + * $Id: dir.c,v 1.29 2003/07/24 19:00:42 chorns Exp $ * * COPYRIGHT: See COPYING in the top level directory * PROJECT: ReactOS kernel @@ -13,7 +13,9 @@ #include #include +#ifndef NDEBUG #define NDEBUG +#endif #include #include "vfat.h" @@ -211,7 +213,8 @@ NTSTATUS DoQuery (PVFAT_IRP_CONTEXT IrpContext) pCcb = (PVFATCCB) IrpContext->FileObject->FsContext2; pFcb = (PVFATFCB) IrpContext->FileObject->FsContext; - if (!ExAcquireResourceSharedLite(&pFcb->MainResource, IrpContext->Flags & IRPCONTEXT_CANWAIT)) + if (!ExAcquireResourceSharedLite(&pFcb->MainResource, + (BOOLEAN)(IrpContext->Flags & IRPCONTEXT_CANWAIT))) { return STATUS_PENDING; } diff --git a/reactos/drivers/fs/vfat/direntry.c b/reactos/drivers/fs/vfat/direntry.c index 86499616743..cd1d050c49a 100644 --- a/reactos/drivers/fs/vfat/direntry.c +++ b/reactos/drivers/fs/vfat/direntry.c @@ -1,4 +1,4 @@ -/* $Id: direntry.c,v 1.12 2002/12/22 11:26:01 gvg Exp $ +/* $Id: direntry.c,v 1.13 2003/07/24 19:00:42 chorns Exp $ * * * FILE: DirEntry.c @@ -15,7 +15,9 @@ #include #include +#ifndef NDEBUG #define NDEBUG +#endif #include #include "vfat.h" diff --git a/reactos/drivers/fs/vfat/dirwr.c b/reactos/drivers/fs/vfat/dirwr.c index 115353df5d7..63e6292e36f 100644 --- a/reactos/drivers/fs/vfat/dirwr.c +++ b/reactos/drivers/fs/vfat/dirwr.c @@ -1,4 +1,4 @@ -/* $Id: dirwr.c,v 1.36 2003/05/11 09:51:26 hbirr Exp $ +/* $Id: dirwr.c,v 1.37 2003/07/24 19:00:42 chorns Exp $ * * COPYRIGHT: See COPYING in the top level directory * PROJECT: ReactOS kernel @@ -14,7 +14,9 @@ #include #include +#ifndef NDEBUG #define NDEBUG +#endif #include #include "vfat.h" @@ -42,8 +44,10 @@ VfatUpdateEntry (PDEVICE_EXTENSION DeviceExt, PFILE_OBJECT pFileObject) PVFATFCB pDirFcb, pFcb; LARGE_INTEGER Offset; +/* DPRINT ("updEntry PathFileName \'%S\'\n", ((PVFATCCB)(pFileObject->FsContext2))->pFcb->PathName); +*/ pFcb = (PVFATFCB)pFileObject->FsContext; assert (pFcb); @@ -144,8 +148,8 @@ findDirSpace(PDEVICE_EXTENSION DeviceExt, return FALSE; } // clear the new dir cluster - FileOffset.u.LowPart = pDirFcb->RFCB.FileSize.QuadPart - - DeviceExt->FatInfo.BytesPerCluster; + FileOffset.u.LowPart = (DWORD)(pDirFcb->RFCB.FileSize.QuadPart - + DeviceExt->FatInfo.BytesPerCluster); CcMapData (pDirFcb->FileObject, &FileOffset, DeviceExt->FatInfo.BytesPerCluster, TRUE, &Context, (PVOID*)&pFatEntry); RtlZeroMemory(pFatEntry, DeviceExt->FatInfo.BytesPerCluster); @@ -202,7 +206,7 @@ VfatAddEntry (PDEVICE_EXTENSION DeviceExt, { if (PathFileName[i] == L'\\') { - posCar = i; + posCar = (short)i; } } if (posCar == -1) @@ -243,7 +247,7 @@ VfatAddEntry (PDEVICE_EXTENSION DeviceExt, { if (FileName[i] == '.') { - posCar = i; + posCar = (short)i; if (i == j) { j++; @@ -252,11 +256,11 @@ VfatAddEntry (PDEVICE_EXTENSION DeviceExt, } if (!posCar) { - posCar = i; + posCar = (short)i; } if (posCar < j) { - posCar = i; + posCar = (short)i; needTilde = TRUE; } if (posCar > 8) @@ -332,8 +336,8 @@ VfatAddEntry (PDEVICE_EXTENSION DeviceExt, //try first with xxxxxx~y.zzz for (i = 1; i < 10; i++) { - DirName[posCar-1] = '0' + i; - pEntry->Filename[posCar - 1] = '0' + i; + DirName[posCar-1] = (WCHAR)('0' + i); + pEntry->Filename[posCar - 1] = (unsigned char)('0' + i); Status = FindFile (DeviceExt, &FileFcb, pDirFcb, DirName, NULL, NULL); if (!NT_SUCCESS(Status)) { @@ -473,7 +477,7 @@ VfatAddEntry (PDEVICE_EXTENSION DeviceExt, if (needLong) { // calculate checksum for 8.3 name - for (pSlots[0].alias_checksum = i = 0; i < 11; i++) + for (pSlots[0].alias_checksum = 0, i = 0; i < 11; i++) { pSlots[0].alias_checksum = (((pSlots[0].alias_checksum & 1) << 7 | ((pSlots[0].alias_checksum & 0xfe) >> 1)) @@ -523,9 +527,9 @@ VfatAddEntry (PDEVICE_EXTENSION DeviceExt, } if (DeviceExt->FatInfo.FatType == FAT32) { - pEntry->FirstClusterHigh = CurrentCluster >> 16; + pEntry->FirstClusterHigh = (unsigned short)(CurrentCluster >> 16); } - pEntry->FirstCluster = CurrentCluster; + pEntry->FirstCluster = (unsigned short)CurrentCluster; } size = DeviceExt->FatInfo.BytesPerCluster / sizeof(FATDirEntry); @@ -554,7 +558,7 @@ VfatAddEntry (PDEVICE_EXTENSION DeviceExt, CcMapData (pDirFcb->FileObject, &FileOffset, nbSlots * sizeof(FATDirEntry) - size, TRUE, &Context, (PVOID*)&pFatEntry); - memcpy(pFatEntry, (PVOID)Buffer + size, nbSlots * sizeof(FATDirEntry) - size); + memcpy(pFatEntry, (PVOID)(Buffer + size), nbSlots * sizeof(FATDirEntry) - size); } CcSetDirtyPinnedData(Context, NULL); CcUnpinData(Context); @@ -616,8 +620,7 @@ delEntry (PDEVICE_EXTENSION DeviceExt, PFILE_OBJECT pFileObject) PVFATFCB pFcb = NULL, pDirFcb = NULL; NTSTATUS status; PWSTR pName; - ULONG Entry = 0, startEntry, Read, CurrentCluster, NextCluster, i; - FATDirEntry DirEntry; + ULONG Entry = 0, startEntry, CurrentCluster, NextCluster, i; DPRINT ("delEntry PathFileName \'%S\'\n", pFileObject->FileName.Buffer); diff --git a/reactos/drivers/fs/vfat/ea.c b/reactos/drivers/fs/vfat/ea.c index 3063f12b370..913721e71de 100644 --- a/reactos/drivers/fs/vfat/ea.c +++ b/reactos/drivers/fs/vfat/ea.c @@ -16,7 +16,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ -/* $Id: ea.c,v 1.1 2002/08/14 20:58:31 dwelch Exp $ +/* $Id: ea.c,v 1.2 2003/07/24 19:00:42 chorns Exp $ * * PROJECT: ReactOS kernel * FILE: services/fs/vfat/ea.c @@ -31,7 +31,9 @@ #include #include +#ifndef NDEBUG #define NDEBUG +#endif #include #include "vfat.h" diff --git a/reactos/drivers/fs/vfat/fat.c b/reactos/drivers/fs/vfat/fat.c index 9dbbbe7215b..0e0ff0be87b 100644 --- a/reactos/drivers/fs/vfat/fat.c +++ b/reactos/drivers/fs/vfat/fat.c @@ -1,5 +1,5 @@ /* - * $Id: fat.c,v 1.41 2003/01/04 02:07:18 hbirr Exp $ + * $Id: fat.c,v 1.42 2003/07/24 19:00:42 chorns Exp $ * * COPYRIGHT: See COPYING in the top level directory * PROJECT: ReactOS kernel @@ -15,7 +15,9 @@ #include #include +#ifndef NDEBUG #define NDEBUG +#endif #include #include "vfat.h" @@ -39,7 +41,6 @@ Fat32GetNextCluster(PDEVICE_EXTENSION DeviceExt, */ { PVOID BaseAddress; - NTSTATUS Status; ULONG FATOffset; ULONG ChunkSize; PVOID Context; @@ -52,7 +53,7 @@ Fat32GetNextCluster(PDEVICE_EXTENSION DeviceExt, { return STATUS_UNSUCCESSFUL; } - CurrentCluster = (*(PULONG)(BaseAddress + (FATOffset % ChunkSize))) & 0x0fffffff; + CurrentCluster = (*(PULONG)((char*)BaseAddress + (FATOffset % ChunkSize))) & 0x0fffffff; if (CurrentCluster >= 0xffffff8 && CurrentCluster <= 0xfffffff) CurrentCluster = 0xffffffff; CcUnpinData(Context); @@ -69,7 +70,6 @@ Fat16GetNextCluster(PDEVICE_EXTENSION DeviceExt, */ { PVOID BaseAddress; - NTSTATUS Status; ULONG FATOffset; ULONG ChunkSize; PVOID Context; @@ -82,7 +82,7 @@ Fat16GetNextCluster(PDEVICE_EXTENSION DeviceExt, { return STATUS_UNSUCCESSFUL; } - CurrentCluster = *((PUSHORT)(BaseAddress + (FATOffset % ChunkSize))); + CurrentCluster = *((PUSHORT)((char*)BaseAddress + (FATOffset % ChunkSize))); if (CurrentCluster >= 0xfff8 && CurrentCluster <= 0xffff) CurrentCluster = 0xffffffff; CcUnpinData(Context); @@ -99,9 +99,7 @@ Fat12GetNextCluster(PDEVICE_EXTENSION DeviceExt, */ { PUSHORT CBlock; - ULONG FATOffset; ULONG Entry; - NTSTATUS Status; PVOID BaseAddress; PVOID Context; LARGE_INTEGER Offset; @@ -114,7 +112,7 @@ Fat12GetNextCluster(PDEVICE_EXTENSION DeviceExt, { return STATUS_UNSUCCESSFUL; } - CBlock = (PUSHORT)(BaseAddress + (CurrentCluster * 12) / 8); + CBlock = (PUSHORT)((char*)BaseAddress + (CurrentCluster * 12) / 8); if ((CurrentCluster % 2) == 0) { Entry = *CBlock & 0x0fff; @@ -143,7 +141,6 @@ FAT16FindAvailableCluster(PDEVICE_EXTENSION DeviceExt, ULONG FatLength; ULONG StartCluster; ULONG i, j; - NTSTATUS Status; PVOID BaseAddress; ULONG ChunkSize; PVOID Context = 0; @@ -173,7 +170,7 @@ FAT16FindAvailableCluster(PDEVICE_EXTENSION DeviceExt, return STATUS_UNSUCCESSFUL; } CHECKPOINT; - Block = (PUSHORT)(BaseAddress + i % ChunkSize); + Block = (PUSHORT)((char*)BaseAddress + i % ChunkSize); } if (*Block == 0) @@ -202,13 +199,11 @@ FAT12FindAvailableCluster(PDEVICE_EXTENSION DeviceExt, PULONG Cluster) */ { ULONG FatLength; - ULONG FATOffset; ULONG StartCluster; ULONG Entry; PUSHORT CBlock; ULONG i, j; PVOID BaseAddress; - NTSTATUS Status; PVOID Context; LARGE_INTEGER Offset; @@ -226,7 +221,7 @@ FAT12FindAvailableCluster(PDEVICE_EXTENSION DeviceExt, PULONG Cluster) { for (i = StartCluster; i < FatLength; i++) { - CBlock = (PUSHORT)(BaseAddress + (i * 12) / 8); + CBlock = (PUSHORT)((char*)BaseAddress + (i * 12) / 8); if ((i % 2) == 0) { Entry = *CBlock & 0xfff; @@ -259,7 +254,6 @@ FAT32FindAvailableCluster (PDEVICE_EXTENSION DeviceExt, PULONG Cluster) ULONG FatLength; ULONG StartCluster; ULONG i, j; - NTSTATUS Status; PVOID BaseAddress; ULONG ChunkSize; PVOID Context = 0; @@ -287,7 +281,7 @@ FAT32FindAvailableCluster (PDEVICE_EXTENSION DeviceExt, PULONG Cluster) DPRINT1("CcMapData(Offset %x, Length %d) failed\n", (ULONG)Offset.QuadPart, ChunkSize); return STATUS_UNSUCCESSFUL; } - Block = (PULONG)(BaseAddress + i % ChunkSize); + Block = (PULONG)((char*)BaseAddress + i % ChunkSize); } if ((*Block & 0x0fffffff) == 0) @@ -316,12 +310,10 @@ FAT12CountAvailableClusters(PDEVICE_EXTENSION DeviceExt) * FUNCTION: Counts free cluster in a FAT12 table */ { - ULONG FATOffset; ULONG Entry; PVOID BaseAddress; ULONG ulCount = 0; ULONG i; - NTSTATUS Status; ULONG numberofclusters; LARGE_INTEGER Offset; PVOID Context; @@ -337,7 +329,7 @@ FAT12CountAvailableClusters(PDEVICE_EXTENSION DeviceExt) for (i = 2; i < numberofclusters; i++) { - CBlock = (PUSHORT)(BaseAddress + (i * 12) / 8); + CBlock = (PUSHORT)((char*)BaseAddress + (i * 12) / 8); if ((i % 2) == 0) { Entry = *CBlock & 0x0fff; @@ -369,7 +361,6 @@ FAT16CountAvailableClusters(PDEVICE_EXTENSION DeviceExt) ULONG ulCount = 0; ULONG i; ULONG ChunkSize; - NTSTATUS Status; PVOID Context = NULL; LARGE_INTEGER Offset; ULONG FatLength; @@ -391,7 +382,7 @@ FAT16CountAvailableClusters(PDEVICE_EXTENSION DeviceExt) { return STATUS_UNSUCCESSFUL; } - Block = (PUSHORT)(BaseAddress + i % ChunkSize); + Block = (PUSHORT)((char*)BaseAddress + i % ChunkSize); } if (*Block == 0) ulCount++; @@ -416,7 +407,6 @@ FAT32CountAvailableClusters(PDEVICE_EXTENSION DeviceExt) ULONG ulCount = 0; ULONG i; ULONG ChunkSize; - NTSTATUS Status; PVOID Context = NULL; LARGE_INTEGER Offset; ULONG FatLength; @@ -437,7 +427,7 @@ FAT32CountAvailableClusters(PDEVICE_EXTENSION DeviceExt) { return STATUS_UNSUCCESSFUL; } - Block = (PULONG)(BaseAddress + i % ChunkSize); + Block = (PULONG)((char*)BaseAddress + i % ChunkSize); } if ((*Block & 0x0fffffff) == 0) ulCount++; @@ -487,8 +477,6 @@ FAT12WriteCluster(PDEVICE_EXTENSION DeviceExt, ULONG FATsector; ULONG FATOffset; PUCHAR CBlock; - int i; - NTSTATUS Status; PVOID BaseAddress; PVOID Context; LARGE_INTEGER Offset; @@ -506,7 +494,7 @@ FAT12WriteCluster(PDEVICE_EXTENSION DeviceExt, if ((ClusterToWrite % 2) == 0) { *OldValue = CBlock[FATOffset] + ((CBlock[FATOffset + 1] & 0x0f) << 8); - CBlock[FATOffset] = NewValue; + CBlock[FATOffset] = (UCHAR)NewValue; CBlock[FATOffset + 1] &= 0xf0; CBlock[FATOffset + 1] |= (NewValue & 0xf00) >> 8; } @@ -515,7 +503,7 @@ FAT12WriteCluster(PDEVICE_EXTENSION DeviceExt, *OldValue = (CBlock[FATOffset] >> 4) + (CBlock[FATOffset + 1] << 4); CBlock[FATOffset] &= 0x0f; CBlock[FATOffset] |= (NewValue & 0xf) << 4; - CBlock[FATOffset + 1] = NewValue >> 4; + CBlock[FATOffset + 1] = (UCHAR)(NewValue >> 4); } /* Write the changed FAT sector(s) to disk */ FATsector = FATOffset / DeviceExt->FatInfo.BytesPerSector; @@ -534,9 +522,7 @@ FAT16WriteCluster(PDEVICE_EXTENSION DeviceExt, */ { PVOID BaseAddress; - NTSTATUS Status; ULONG FATOffset; - ULONG i; ULONG ChunkSize; PVOID Context; LARGE_INTEGER Offset; @@ -551,9 +537,9 @@ FAT16WriteCluster(PDEVICE_EXTENSION DeviceExt, } DPRINT("Writing 0x%x for offset 0x%x 0x%x\n", NewValue, FATOffset, ClusterToWrite); - Cluster = ((PUSHORT)(BaseAddress + (FATOffset % ChunkSize))); + Cluster = ((PUSHORT)((char*)BaseAddress + (FATOffset % ChunkSize))); *OldValue = *Cluster; - *Cluster = NewValue; + *Cluster = (USHORT)NewValue; CcSetDirtyPinnedData(Context, NULL); CcUnpinData(Context); return(STATUS_SUCCESS); @@ -569,9 +555,7 @@ FAT32WriteCluster(PDEVICE_EXTENSION DeviceExt, */ { PVOID BaseAddress; - NTSTATUS Status; ULONG FATOffset; - ULONG i; ULONG ChunkSize; PVOID Context; LARGE_INTEGER Offset; @@ -587,7 +571,7 @@ FAT32WriteCluster(PDEVICE_EXTENSION DeviceExt, } DPRINT("Writing 0x%x for offset 0x%x 0x%x\n", NewValue, FATOffset, ClusterToWrite); - Cluster = ((PULONG)(BaseAddress + (FATOffset % ChunkSize))); + Cluster = ((PULONG)((char*)BaseAddress + (FATOffset % ChunkSize))); *OldValue = *Cluster & 0x0fffffff; *Cluster = (*Cluster & 0xf0000000) | (NewValue & 0x0fffffff); diff --git a/reactos/drivers/fs/vfat/fcb.c b/reactos/drivers/fs/vfat/fcb.c index 741abbce78b..93281d632b0 100644 --- a/reactos/drivers/fs/vfat/fcb.c +++ b/reactos/drivers/fs/vfat/fcb.c @@ -1,4 +1,4 @@ -/* $Id: fcb.c,v 1.30 2003/07/21 21:53:47 royce Exp $ +/* $Id: fcb.c,v 1.31 2003/07/24 19:00:42 chorns Exp $ * * * FILE: fcb.c @@ -15,7 +15,9 @@ #include #include +#ifndef NDEBUG #define NDEBUG +#endif #include #include "vfat.h" @@ -205,12 +207,9 @@ vfatGrabFCBFromTable(PDEVICE_EXTENSION pVCB, PWSTR pFileName) { KIRQL oldIrql; PVFATFCB rcFCB; - PLIST_ENTRY current_entry; ULONG Hash; PWCHAR ObjectName = NULL; ULONG len; - ULONG index; - ULONG currentindex; HASHENTRY* entry; @@ -323,8 +322,8 @@ vfatMakeRootFCB(PDEVICE_EXTENSION pVCB) if (pVCB->FatInfo.FatType == FAT32) { CurrentCluster = FirstCluster = pVCB->FatInfo.RootCluster; - FCB->entry.FirstCluster = FirstCluster & 0xffff; - FCB->entry.FirstClusterHigh = FirstCluster >> 16; + FCB->entry.FirstCluster = (unsigned short)(FirstCluster & 0xffff); + FCB->entry.FirstClusterHigh = (unsigned short)(FirstCluster >> 16); while (CurrentCluster != 0xffffffff && NT_SUCCESS(Status)) { @@ -449,7 +448,6 @@ vfatAttachFCBToFileObject (PDEVICE_EXTENSION vcb, PVFATFCB fcb, PFILE_OBJECT fileObject) { - NTSTATUS status; PVFATCCB newCCB; newCCB = ExAllocateFromNPagedLookasideList(&VfatGlobalData->CcbLookasideList); diff --git a/reactos/drivers/fs/vfat/finfo.c b/reactos/drivers/fs/vfat/finfo.c index 7f04111d486..debad6106fc 100644 --- a/reactos/drivers/fs/vfat/finfo.c +++ b/reactos/drivers/fs/vfat/finfo.c @@ -1,4 +1,4 @@ -/* $Id: finfo.c,v 1.30 2003/06/07 11:34:36 chorns Exp $ +/* $Id: finfo.c,v 1.31 2003/07/24 19:00:42 chorns Exp $ * * COPYRIGHT: See COPYING in the top level directory * PROJECT: ReactOS kernel @@ -13,7 +13,9 @@ #include #include +#ifndef NDEBUG #define NDEBUG +#endif #include #include "vfat.h" @@ -110,13 +112,13 @@ VfatSetBasicInformation(PFILE_OBJECT FileObject, &(FCB->entry.UpdateDate), &(FCB->entry.UpdateTime)); - FCB->entry.Attrib = (FCB->entry.Attrib & + FCB->entry.Attrib = (unsigned char)((FCB->entry.Attrib & (FILE_ATTRIBUTE_DIRECTORY | 0x48)) | (BasicInfo->FileAttributes & (FILE_ATTRIBUTE_ARCHIVE | FILE_ATTRIBUTE_SYSTEM | FILE_ATTRIBUTE_HIDDEN | - FILE_ATTRIBUTE_READONLY)); + FILE_ATTRIBUTE_READONLY))); DPRINT("Setting attributes 0x%02x\n", FCB->entry.Attrib); VfatUpdateEntry(DeviceExt, FileObject); @@ -393,7 +395,7 @@ VOID UpdateFileSize(PFILE_OBJECT FileObject, PVFATFCB Fcb, ULONG Size, ULONG Clu } else { - Fcb->RFCB.AllocationSize.QuadPart = 0LL; + Fcb->RFCB.AllocationSize.QuadPart = (LONGLONG)0; } if (!vfatFCBIsDirectory(Fcb)) { @@ -416,7 +418,6 @@ VfatSetAllocationSizeInformation(PFILE_OBJECT FileObject, { ULONG OldSize; ULONG Cluster, FirstCluster; - ULONG Offset; NTSTATUS Status; ULONG ClusterSize = DeviceExt->FatInfo.BytesPerCluster; @@ -467,8 +468,8 @@ VfatSetAllocationSizeInformation(PFILE_OBJECT FileObject, } return STATUS_DISK_FULL; } - Fcb->entry.FirstCluster = (FirstCluster & 0x0000FFFF); - Fcb->entry.FirstClusterHigh = (FirstCluster & 0xFFFF0000) >> 16; + Fcb->entry.FirstCluster = (unsigned short)(FirstCluster & 0x0000FFFF); + Fcb->entry.FirstClusterHigh = (unsigned short)((FirstCluster & 0xFFFF0000) >> 16); } else { @@ -560,7 +561,8 @@ NTSTATUS VfatQueryInformation(PVFAT_IRP_CONTEXT IrpContext) if (!(FCB->Flags & FCB_IS_PAGE_FILE)) { - if (!ExAcquireResourceSharedLite(&FCB->MainResource, IrpContext->Flags & IRPCONTEXT_CANWAIT)) + if (!ExAcquireResourceSharedLite(&FCB->MainResource, + (BOOLEAN)(IrpContext->Flags & IRPCONTEXT_CANWAIT))) { return VfatQueueRequest (IrpContext); } @@ -662,7 +664,8 @@ NTSTATUS VfatSetInformation(PVFAT_IRP_CONTEXT IrpContext) if (!(FCB->Flags & FCB_IS_PAGE_FILE)) { - if (!ExAcquireResourceExclusiveLite(&FCB->MainResource, CanWait)) + if (!ExAcquireResourceExclusiveLite(&FCB->MainResource, + (BOOLEAN)CanWait)) { return(VfatQueueRequest (IrpContext)); } diff --git a/reactos/drivers/fs/vfat/flush.c b/reactos/drivers/fs/vfat/flush.c index 55623a086fb..3830ef4c66b 100644 --- a/reactos/drivers/fs/vfat/flush.c +++ b/reactos/drivers/fs/vfat/flush.c @@ -1,4 +1,4 @@ -/* $Id: flush.c,v 1.2 2003/02/13 22:24:17 hbirr Exp $ +/* $Id: flush.c,v 1.3 2003/07/24 19:00:42 chorns Exp $ * * COPYRIGHT: See COPYING in the top level directory * PROJECT: ReactOS kernel @@ -12,7 +12,9 @@ #include #include "vfat.h" +#ifndef NDEBUG #define NDEBUG +#endif #include /* FUNCTIONS ****************************************************************/ diff --git a/reactos/drivers/fs/vfat/fsctl.c b/reactos/drivers/fs/vfat/fsctl.c index 58062b4a18d..6af1bdcaa04 100644 --- a/reactos/drivers/fs/vfat/fsctl.c +++ b/reactos/drivers/fs/vfat/fsctl.c @@ -16,7 +16,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ -/* $Id: fsctl.c,v 1.18 2003/07/21 21:53:47 royce Exp $ +/* $Id: fsctl.c,v 1.19 2003/07/24 19:00:42 chorns Exp $ * * COPYRIGHT: See COPYING in the top level directory * PROJECT: ReactOS kernel @@ -29,7 +29,9 @@ #include #include +#ifndef NDEBUG #define NDEBUG +#endif #include #include "vfat.h" @@ -211,7 +213,6 @@ VfatMount (PVFAT_IRP_CONTEXT IrpContext) PVFATFCB Fcb = NULL; PVFATFCB VolumeFcb = NULL; PVFATCCB Ccb = NULL; - LARGE_INTEGER timeout; PDEVICE_OBJECT DeviceToMount; DPRINT("VfatMount(IrpContext %x)\n", IrpContext); diff --git a/reactos/drivers/fs/vfat/iface.c b/reactos/drivers/fs/vfat/iface.c index 23a58d4f178..005ae57a6a0 100644 --- a/reactos/drivers/fs/vfat/iface.c +++ b/reactos/drivers/fs/vfat/iface.c @@ -16,7 +16,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ -/* $Id: iface.c,v 1.68 2003/02/09 18:02:55 hbirr Exp $ +/* $Id: iface.c,v 1.69 2003/07/24 19:00:42 chorns Exp $ * * PROJECT: ReactOS kernel * FILE: services/fs/vfat/iface.c @@ -28,7 +28,9 @@ #include +#ifndef NDEBUG #define NDEBUG +#endif #include #include "vfat.h" diff --git a/reactos/drivers/fs/vfat/misc.c b/reactos/drivers/fs/vfat/misc.c index 150feefb7ee..b13f2414f46 100644 --- a/reactos/drivers/fs/vfat/misc.c +++ b/reactos/drivers/fs/vfat/misc.c @@ -1,4 +1,4 @@ -/* $Id: misc.c,v 1.8 2003/07/10 11:03:51 chorns Exp $ +/* $Id: misc.c,v 1.9 2003/07/24 19:00:42 chorns Exp $ * * COPYRIGHT: See COPYING in the top level directory * PROJECT: ReactOS kernel @@ -13,7 +13,9 @@ #include #include +#ifndef NDEBUG #define NDEBUG +#endif #include #include "vfat.h" @@ -57,7 +59,7 @@ NTSTATUS VfatLockControl( Fail:; IrpContext->Irp->IoStatus.Status = Status; - IofCompleteRequest(IrpContext->Irp, NT_SUCCESS(Status) ? IO_DISK_INCREMENT : IO_NO_INCREMENT); + IofCompleteRequest(IrpContext->Irp, (CCHAR)(NT_SUCCESS(Status) ? IO_DISK_INCREMENT : IO_NO_INCREMENT)); VfatFreeIrpContext(IrpContext); return Status; } @@ -152,7 +154,7 @@ VOID VfatFreeIrpContext (PVFAT_IRP_CONTEXT IrpContext) PVFAT_IRP_CONTEXT VfatAllocateIrpContext(PDEVICE_OBJECT DeviceObject, PIRP Irp) { PVFAT_IRP_CONTEXT IrpContext; - PIO_STACK_LOCATION Stack; + /*PIO_STACK_LOCATION Stack;*/ UCHAR MajorFunction; DPRINT ("VfatAllocateIrpContext(DeviceObject %x, Irp %x)\n", DeviceObject, Irp); diff --git a/reactos/drivers/fs/vfat/rw.c b/reactos/drivers/fs/vfat/rw.c index 096bea25f32..6b491c52071 100644 --- a/reactos/drivers/fs/vfat/rw.c +++ b/reactos/drivers/fs/vfat/rw.c @@ -1,5 +1,5 @@ -/* $Id: rw.c,v 1.57 2003/07/21 21:53:47 royce Exp $ +/* $Id: rw.c,v 1.58 2003/07/24 19:00:42 chorns Exp $ * * COPYRIGHT: See COPYING in the top level directory * PROJECT: ReactOS kernel @@ -15,7 +15,9 @@ #include #include +#ifndef NDEBUG #define NDEBUG +#endif #include #include "vfat.h" @@ -76,9 +78,11 @@ OffsetToCluster(PDEVICE_EXTENSION DeviceExt, ULONG CurrentCluster; ULONG i; NTSTATUS Status; +/* DPRINT("OffsetToCluster(DeviceExt %x, Fcb %x, FirstCluster %x," " FileOffset %x, Cluster %x, Extend %d)\n", DeviceExt, Fcb, FirstCluster, FileOffset, Cluster, Extend); +*/ if (FirstCluster == 0) { DbgPrint("OffsetToCluster is called with FirstCluster = 0!\n"); @@ -269,7 +273,15 @@ VfatReadFileData (PVFAT_IRP_CONTEXT IrpContext, PVOID Buffer, if (NT_SUCCESS(Status)) { *LengthRead += BytesDone; +/* GCC allows arithmetics on the void type. Conforming compilers do not. */ +#ifdef __GNUC__ Buffer += BytesDone; +#else + { + char* pBuf = (char*)Buffer + BytesDone; + Buffer = (PVOID)pBuf; + } +#endif Length -= BytesDone; ReadOffset.u.LowPart += BytesDone; } @@ -422,7 +434,15 @@ NTSTATUS VfatWriteFileData(PVFAT_IRP_CONTEXT IrpContext, Status = VfatWriteDisk (DeviceExt->StorageDevice, &StartOffset, BytesDone, Buffer); if (NT_SUCCESS(Status)) { +/* GCC allows arithmetics on the void type. Conforming compilers do not. */ +#ifdef __GNUC__ Buffer += BytesDone; +#else + { + char* pBuf = (char*)Buffer + BytesDone; + Buffer = (PVOID)pBuf; + } +#endif Length -= BytesDone; WriteOffset.u.LowPart += BytesDone; } @@ -440,7 +460,7 @@ VfatRead(PVFAT_IRP_CONTEXT IrpContext) PERESOURCE Resource = NULL; LARGE_INTEGER ByteOffset; PVOID Buffer; - PDEVICE_OBJECT DeviceToVerify; + /*PDEVICE_OBJECT DeviceToVerify;*/ ULONG BytesPerSector; assert(IrpContext); @@ -531,7 +551,8 @@ VfatRead(PVFAT_IRP_CONTEXT IrpContext) { Resource = &Fcb->MainResource; } - if (!ExAcquireResourceSharedLite(Resource, IrpContext->Flags & IRPCONTEXT_CANWAIT)) + if (!ExAcquireResourceSharedLite(Resource, + (BOOLEAN)(IrpContext->Flags & IRPCONTEXT_CANWAIT))) { Resource = NULL; Status = STATUS_PENDING; @@ -579,7 +600,7 @@ VfatRead(PVFAT_IRP_CONTEXT IrpContext) CcRosInitializeFileCache(IrpContext->FileObject, CacheSize); } if (!CcCopyRead(IrpContext->FileObject, &ByteOffset, Length, - IrpContext->Flags & IRPCONTEXT_CANWAIT, Buffer, + (BOOLEAN)(IrpContext->Flags & IRPCONTEXT_CANWAIT), Buffer, &IrpContext->Irp->IoStatus)) { Status = STATUS_PENDING; @@ -597,7 +618,7 @@ VfatRead(PVFAT_IRP_CONTEXT IrpContext) CHECKPOINT; if (ByteOffset.QuadPart + Length > ROUND_UP(Fcb->RFCB.FileSize.QuadPart, BytesPerSector)) { - Length = ROUND_UP(Fcb->RFCB.FileSize.QuadPart, BytesPerSector) - ByteOffset.QuadPart; + Length = (ULONG)(ROUND_UP(Fcb->RFCB.FileSize.QuadPart, BytesPerSector) - ByteOffset.QuadPart); } Buffer = VfatGetUserBuffer(IrpContext->Irp); @@ -661,7 +682,7 @@ ByeBye: } IoCompleteRequest(IrpContext->Irp, - NT_SUCCESS(Status) ? IO_DISK_INCREMENT : IO_NO_INCREMENT); + (CCHAR)(NT_SUCCESS(Status) ? IO_DISK_INCREMENT : IO_NO_INCREMENT)); VfatFreeIrpContext(IrpContext); } DPRINT("%x\n", Status); @@ -787,7 +808,8 @@ NTSTATUS VfatWrite (PVFAT_IRP_CONTEXT IrpContext) if (Fcb->Flags & FCB_IS_PAGE_FILE) { - if (!ExAcquireResourceSharedLite(Resource, IrpContext->Flags & IRPCONTEXT_CANWAIT)) + if (!ExAcquireResourceSharedLite(Resource, + (BOOLEAN)(IrpContext->Flags & IRPCONTEXT_CANWAIT))) { Resource = NULL; Status = STATUS_PENDING; @@ -796,7 +818,8 @@ NTSTATUS VfatWrite (PVFAT_IRP_CONTEXT IrpContext) } else { - if (!ExAcquireResourceExclusiveLite(Resource, IrpContext->Flags & IRPCONTEXT_CANWAIT)) + if (!ExAcquireResourceExclusiveLite(Resource, + (BOOLEAN)(IrpContext->Flags & IRPCONTEXT_CANWAIT))) { Resource = NULL; Status = STATUS_PENDING; @@ -952,7 +975,7 @@ ByeBye: } IoCompleteRequest(IrpContext->Irp, - NT_SUCCESS(Status) ? IO_DISK_INCREMENT : IO_NO_INCREMENT); + (CCHAR)(NT_SUCCESS(Status) ? IO_DISK_INCREMENT : IO_NO_INCREMENT)); VfatFreeIrpContext(IrpContext); } DPRINT("%x\n", Status); diff --git a/reactos/drivers/fs/vfat/shutdown.c b/reactos/drivers/fs/vfat/shutdown.c index 853f0649a84..9a041dabf02 100644 --- a/reactos/drivers/fs/vfat/shutdown.c +++ b/reactos/drivers/fs/vfat/shutdown.c @@ -1,4 +1,4 @@ -/* $Id: shutdown.c,v 1.5 2003/02/09 18:02:55 hbirr Exp $ +/* $Id: shutdown.c,v 1.6 2003/07/24 19:00:42 chorns Exp $ * * COPYRIGHT: See COPYING in the top level directory * PROJECT: ReactOS kernel @@ -11,7 +11,9 @@ #include +#ifndef NDEBUG #define NDEBUG +#endif #include #include "vfat.h" diff --git a/reactos/drivers/fs/vfat/string.c b/reactos/drivers/fs/vfat/string.c index ce3514c00c9..0d9f9a5b4d4 100644 --- a/reactos/drivers/fs/vfat/string.c +++ b/reactos/drivers/fs/vfat/string.c @@ -1,4 +1,4 @@ -/* $Id: string.c,v 1.9 2002/11/11 21:49:18 hbirr Exp $ +/* $Id: string.c,v 1.10 2003/07/24 19:00:42 chorns Exp $ * * COPYRIGHT: See COPYING in the top level directory * PROJECT: ReactOS kernel @@ -13,7 +13,9 @@ #include #include +#ifndef NDEBUG #define NDEBUG +#endif #include #include "vfat.h" diff --git a/reactos/drivers/fs/vfat/vfat.h b/reactos/drivers/fs/vfat/vfat.h index 98d259ad27e..11d98cee35f 100644 --- a/reactos/drivers/fs/vfat/vfat.h +++ b/reactos/drivers/fs/vfat/vfat.h @@ -1,4 +1,4 @@ -/* $Id: vfat.h,v 1.58 2003/06/07 11:34:36 chorns Exp $ */ +/* $Id: vfat.h,v 1.59 2003/07/24 19:00:42 chorns Exp $ */ #include @@ -433,6 +433,11 @@ NTSTATUS GetNextCluster (PDEVICE_EXTENSION DeviceExt, NTSTATUS CountAvailableClusters (PDEVICE_EXTENSION DeviceExt, PLARGE_INTEGER Clusters); +NTSTATUS +WriteCluster(PDEVICE_EXTENSION DeviceExt, + ULONG ClusterToWrite, + ULONG NewValue); + /* ------------------------------------------------------ direntry.c */ ULONG vfatDirEntryGetFirstCluster (PDEVICE_EXTENSION pDeviceExt, @@ -461,6 +466,8 @@ PVFATFCB vfatNewFCB (PWCHAR pFileName); VOID vfatDestroyFCB (PVFATFCB pFCB); +VOID vfatDestroyCCB(PVFATCCB pCcb); + VOID vfatGrabFCB (PDEVICE_EXTENSION pVCB, PVFATFCB pFCB); @@ -479,6 +486,8 @@ PVFATFCB vfatOpenRootFCB (PDEVICE_EXTENSION pVCB); BOOL vfatFCBIsDirectory (PVFATFCB FCB); +BOOL vfatFCBIsRoot(PVFATFCB FCB); + NTSTATUS vfatAttachFCBToFileObject (PDEVICE_EXTENSION vcb, PVFATFCB fcb, PFILE_OBJECT fileObject); diff --git a/reactos/drivers/fs/vfat/volume.c b/reactos/drivers/fs/vfat/volume.c index cd3ab88d92c..c97e63c036a 100644 --- a/reactos/drivers/fs/vfat/volume.c +++ b/reactos/drivers/fs/vfat/volume.c @@ -1,4 +1,4 @@ -/* $Id: volume.c,v 1.20 2003/07/20 23:09:01 hbirr Exp $ +/* $Id: volume.c,v 1.21 2003/07/24 19:00:42 chorns Exp $ * * COPYRIGHT: See COPYING in the top level directory * PROJECT: ReactOS kernel @@ -12,7 +12,9 @@ #include #include +#ifndef NDEBUG #define NDEBUG +#endif #include #include "vfat.h" @@ -181,7 +183,8 @@ NTSTATUS VfatQueryVolumeInformation(PVFAT_IRP_CONTEXT IrpContext) DPRINT("VfatQueryVolumeInformation(IrpContext %x)\n", IrpContext); - if (!ExAcquireResourceSharedLite(&((PDEVICE_EXTENSION)IrpContext->DeviceObject->DeviceExtension)->DirResource, IrpContext->Flags & IRPCONTEXT_CANWAIT)) + if (!ExAcquireResourceSharedLite(&((PDEVICE_EXTENSION)IrpContext->DeviceObject->DeviceExtension)->DirResource, + (BOOLEAN)(IrpContext->Flags & IRPCONTEXT_CANWAIT))) { return VfatQueueRequest (IrpContext); } @@ -253,7 +256,8 @@ NTSTATUS VfatSetVolumeInformation(PVFAT_IRP_CONTEXT IrpContext) DPRINT1("VfatSetVolumeInformation(IrpContext %x)\n", IrpContext); - if (!ExAcquireResourceExclusiveLite(&((PDEVICE_EXTENSION)IrpContext->DeviceObject->DeviceExtension)->DirResource, IrpContext->Flags & IRPCONTEXT_CANWAIT)) + if (!ExAcquireResourceExclusiveLite(&((PDEVICE_EXTENSION)IrpContext->DeviceObject->DeviceExtension)->DirResource, + (BOOLEAN)(IrpContext->Flags & IRPCONTEXT_CANWAIT))) { return VfatQueueRequest (IrpContext); } diff --git a/reactos/include/ddk/kefuncs.h b/reactos/include/ddk/kefuncs.h index 2ac6d0d79b8..132d775727b 100644 --- a/reactos/include/ddk/kefuncs.h +++ b/reactos/include/ddk/kefuncs.h @@ -40,8 +40,8 @@ VOID STDCALL KeAcquireSpinLockAtDpcLevel (IN PKSPIN_LOCK SpinLock); //NTOSAPI //DDKFASTAPI -STDCALL VOID +STDCALL KeReleaseSpinLockFromDpcLevel( IN PKSPIN_LOCK SpinLock); diff --git a/reactos/include/debug.h b/reactos/include/debug.h index acc6db0dcc0..eca025e2c2f 100644 --- a/reactos/include/debug.h +++ b/reactos/include/debug.h @@ -31,7 +31,12 @@ #endif #endif +/* TODO: Make the output of file/line and the debug message atomic */ +#ifdef __GNUC__ #define DPRINT1(args...) do { DbgPrint("(%s:%d) ",__FILE__,__LINE__); DbgPrint(args); } while(0); +#else +#define DPRINT1 DbgPrint("(%s:%d) ",__FILE__,__LINE__); DbgPrint +#endif #define CHECKPOINT1 do { DbgPrint("%s:%d\n",__FILE__,__LINE__); } while(0); @@ -39,7 +44,11 @@ #define DPRINT(args...) do { DbgPrint("(%s:%d) ",__FILE__,__LINE__); DbgPrint(args); } while(0); #define CHECKPOINT do { DbgPrint("%s:%d\n",__FILE__,__LINE__); } while(0); #else +#ifdef __GNUC__ #define DPRINT(args...) +#else +#define DPRINT +#endif /* __GNUC__ */ #define CHECKPOINT #endif /* NDEBUG */ diff --git a/reactos/include/ntos/types.h b/reactos/include/ntos/types.h index e1903746cff..8a6999faaec 100644 --- a/reactos/include/ntos/types.h +++ b/reactos/include/ntos/types.h @@ -44,8 +44,13 @@ typedef short SHORT; #ifndef __USE_W32API #ifdef i386 +#ifdef __GNUC__ #define STDCALL __attribute__ ((stdcall)) #define CDECL __attribute__ ((cdecl)) +#else +#define STDCALL __stdcall +#define CDECL __cdecl +#endif #define CALLBACK WINAPI #define PASCAL WINAPI #else diff --git a/reactos/lib/advapi32/reg/reg.c b/reactos/lib/advapi32/reg/reg.c index 69eda3d7447..bb475675689 100644 --- a/reactos/lib/advapi32/reg/reg.c +++ b/reactos/lib/advapi32/reg/reg.c @@ -1,4 +1,4 @@ -/* $Id: reg.c,v 1.28 2003/07/21 03:38:42 royce Exp $ +/* $Id: reg.c,v 1.29 2003/07/24 19:00:42 chorns Exp $ * * COPYRIGHT: See COPYING in the top level directory * PROJECT: ReactOS system libraries @@ -1820,7 +1820,7 @@ RegQueryMultipleValuesW (HKEY hKey, LPWSTR lpValueBuf, LPDWORD ldwTotsize) { - int i; + ULONG i; DWORD maxBytes = *ldwTotsize; HRESULT status; LPSTR bufptr = (LPSTR)lpValueBuf;