[ros-diffs] 02/02: [FREELDR] PcMemGetBiosMemoryMap(): Add a default handling of entry with "EA.ErrorLog = 1". CORE-14150
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=c1d0d409e7c2dfea17f83272c1332936967dffa5 commit c1d0d409e7c2dfea17f83272c1332936967dffa5 Author: Serge Gautherie AuthorDate: Fri Jan 12 06:30:53 2018 +0100 Commit: Timo Kreuzer CommitDate: Sun Jul 1 12:03:50 2018 +0200 [FREELDR] PcMemGetBiosMemoryMap(): Add a default handling of entry with "EA.ErrorLog = 1". CORE-14150 This FIXME is meant as a reminder/help to actually use this data. --- boot/freeldr/freeldr/arch/i386/pcmem.c | 12 1 file changed, 12 insertions(+) diff --git a/boot/freeldr/freeldr/arch/i386/pcmem.c b/boot/freeldr/freeldr/arch/i386/pcmem.c index b6024ff73a..28d6e06e4c 100644 --- a/boot/freeldr/freeldr/arch/i386/pcmem.c +++ b/boot/freeldr/freeldr/arch/i386/pcmem.c @@ -351,6 +351,18 @@ PcMemGetBiosMemoryMap(PFREELDR_MEMORY_DESCRIPTOR MemoryMap, ULONG MaxMemoryMapSi TRACE("Type: 0x%lx\n", PcBiosMemoryMap[PcBiosMapCount].Type); TRACE("ExtendedAttributesAsULONG: 0x%08lx\n", PcBiosMemoryMap[PcBiosMapCount].ExtendedAttributesAsULONG); +if (PcBiosMemoryMap[PcBiosMapCount].ExtendedAttributes.ErrorLog == 1) +{ +FIXME("EA.ErrorLog = 1. Please report this to CORE-14150. " + "(PcBiosMapCount = %lu, BaseAddress = 0x%llx, Length = 0x%llx, Type = 0x%lx, ExtendedAttributesAsULONG = 0x%08lx)\n", + PcBiosMapCount, + PcBiosMemoryMap[PcBiosMapCount].BaseAddress, + PcBiosMemoryMap[PcBiosMapCount].Length, + PcBiosMemoryMap[PcBiosMapCount].Type, + PcBiosMemoryMap[PcBiosMapCount].ExtendedAttributesAsULONG); +// NotWantedForPublicBuilds: ASSERTMSG("EA.ErrorLog = 1. Check/Report then CONTinue.", FALSE); +} + if (PcBiosMemoryMap[PcBiosMapCount].Length == 0) { TRACE("Discard empty range. (would-be-PcBiosMapCount = %lu, BaseAddress = 0x%llx, Length = 0)\n",
[ros-diffs] 02/10: [LIBUSB] Add additional operator new/delete This is required, since newer versions of MSVC demand that non-member operator new/delete are in the global namespace and neither static
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=a262e8da2d5a4ea474b8a31a649775aea66276d6 commit a262e8da2d5a4ea474b8a31a649775aea66276d6 Author: Timo Kreuzer AuthorDate: Sat Feb 24 11:20:27 2018 +0100 Commit: Timo Kreuzer CommitDate: Sun Jul 1 14:45:21 2018 +0200 [LIBUSB] Add additional operator new/delete This is required, since newer versions of MSVC demand that non-member operator new/delete are in the global namespace and neither static nor inline. See https://msdn.microsoft.com/en-us/library/mt723604.aspx ("Overloaded operator new and operator delete") --- sdk/lib/drivers/libusb/libusb.cpp | 30 ++ sdk/lib/drivers/libusb/libusb.h | 9 + 2 files changed, 39 insertions(+) diff --git a/sdk/lib/drivers/libusb/libusb.cpp b/sdk/lib/drivers/libusb/libusb.cpp index f5dc0f17f4..632614803d 100644 --- a/sdk/lib/drivers/libusb/libusb.cpp +++ b/sdk/lib/drivers/libusb/libusb.cpp @@ -18,6 +18,36 @@ // DRIVER_ADD_DEVICE USBLIB_AddDevice; +PVOID +__cdecl +operator new( +size_t iSize, +POOL_TYPE poolType, +ULONG tag) +{ +PVOID result = ExAllocatePoolWithTag(poolType, iSize, tag); +if (result) { +RtlZeroMemory(result, iSize); +} +return result; +} + +void +__cdecl +operator delete( +PVOID pVoid) +{ +if (pVoid) ExFreePool(pVoid); +} + +void +__cdecl +operator delete( +PVOID pVoid, UINT_PTR) +{ +if (pVoid) ExFreePool(pVoid); +} + extern "C" { diff --git a/sdk/lib/drivers/libusb/libusb.h b/sdk/lib/drivers/libusb/libusb.h index f24190183a..004c2f0a25 100644 --- a/sdk/lib/drivers/libusb/libusb.h +++ b/sdk/lib/drivers/libusb/libusb.h @@ -22,8 +22,17 @@ extern "C" // the following includes are required to get kcom to compile // #include +#define _NEW_DELETE_OPERATORS_ #include +PVOID +__cdecl +operator new( +size_t iSize, +POOL_TYPE poolType, +ULONG tag); + + #include "common_interfaces.h" //
[ros-diffs] 03/10: [NDK] Update x64 version of KEXCEPTION_FRAME
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=158812409d3914f1a5066ca86d8d2941e952e1e3 commit 158812409d3914f1a5066ca86d8d2941e952e1e3 Author: Timo Kreuzer AuthorDate: Fri Feb 9 20:51:28 2018 +0100 Commit: Timo Kreuzer CommitDate: Sun Jul 1 14:45:21 2018 +0200 [NDK] Update x64 version of KEXCEPTION_FRAME --- sdk/include/ndk/amd64/ketypes.h | 12 ++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/sdk/include/ndk/amd64/ketypes.h b/sdk/include/ndk/amd64/ketypes.h index e7afc9d7df..0609dac137 100644 --- a/sdk/include/ndk/amd64/ketypes.h +++ b/sdk/include/ndk/amd64/ketypes.h @@ -930,7 +930,11 @@ typedef struct _KEXCEPTION_FRAME ULONG64 P3Home; ULONG64 P4Home; ULONG64 P5; +#if (NTDDI_VERSION >= NTDDI_WIN8) ULONG64 Spare1; +#else +ULONG64 InitialStack; +#endif M128A Xmm6; M128A Xmm7; M128A Xmm8; @@ -942,10 +946,14 @@ typedef struct _KEXCEPTION_FRAME M128A Xmm14; M128A Xmm15; ULONG64 TrapFrame; -//ULONG64 CallbackStack; +#if (NTDDI_VERSION < NTDDI_WIN8) +ULONG64 CallbackStack; +#endif ULONG64 OutputBuffer; ULONG64 OutputLength; +#if (NTDDI_VERSION >= NTDDI_WIN8) ULONG64 Spare2; +#endif ULONG64 MxCsr; ULONG64 Rbp; ULONG64 Rbx; @@ -973,7 +981,7 @@ typedef struct _MACHINE_FRAME // // Defines the Callback Stack Layout for User Mode Callbacks // -typedef KEXCEPTION_FRAME KCALLOUT_FRAME, PKCALLOUT_FRAME; +typedef KEXCEPTION_FRAME KCALLOUT_FRAME, *PKCALLOUT_FRAME; // // User side callout frame
[ros-diffs] 01/10: [CMAKE] winspool.drv -> winspool in baseaddress_msvc.cmake
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=03830f67a7cbdd2a0c5839c11b8083ad55bf78c9 commit 03830f67a7cbdd2a0c5839c11b8083ad55bf78c9 Author: Timo Kreuzer AuthorDate: Wed Mar 7 14:46:59 2018 +0100 Commit: Timo Kreuzer CommitDate: Sun Jul 1 14:45:21 2018 +0200 [CMAKE] winspool.drv -> winspool in baseaddress_msvc.cmake --- sdk/cmake/baseaddress_msvc.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sdk/cmake/baseaddress_msvc.cmake b/sdk/cmake/baseaddress_msvc.cmake index 81139a268b..2946161f49 100644 --- a/sdk/cmake/baseaddress_msvc.cmake +++ b/sdk/cmake/baseaddress_msvc.cmake @@ -14,7 +14,7 @@ set(baseaddress_shlwapi0x7c35) set(baseaddress_rpcrt4 0x7c2c) set(baseaddress_comctl32 0x7c1a) set(baseaddress_ole32 0x7c06) -set(baseaddress_winspool.drv 0x7c03) +set(baseaddress_winspool 0x7c03) set(baseaddress_winmm 0x7bf9) set(baseaddress_comdlg32 0x7bec) set(baseaddress_shell320x7b5d)
[ros-diffs] 07/10: [DRIVERS][NTOS][NDK] Use IO_STACK_LOCATION instead of EXTENDED_IO_STACK_LOCATION and remove the latter from NDK
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=ca9fd861aa7e2eb6fd142a71ede1839ea70390ba commit ca9fd861aa7e2eb6fd142a71ede1839ea70390ba Author: Timo Kreuzer AuthorDate: Tue Apr 3 16:58:44 2018 +0200 Commit: Timo Kreuzer CommitDate: Sun Jul 1 14:45:21 2018 +0200 [DRIVERS][NTOS][NDK] Use IO_STACK_LOCATION instead of EXTENDED_IO_STACK_LOCATION and remove the latter from NDK --- drivers/filesystems/ext2/inc/ext2fs.h | 1 + drivers/filesystems/msfs/create.c | 4 +- drivers/filesystems/npfs/create.c | 8 +- drivers/filesystems/reiserfs/inc/rfsd.h | 1 + ntoskrnl/io/iomgr/file.c| 4 +- sdk/include/ndk/iotypes.h | 256 +--- 6 files changed, 11 insertions(+), 263 deletions(-) diff --git a/drivers/filesystems/ext2/inc/ext2fs.h b/drivers/filesystems/ext2/inc/ext2fs.h index 10ec2eab5f..08fd465f93 100644 --- a/drivers/filesystems/ext2/inc/ext2fs.h +++ b/drivers/filesystems/ext2/inc/ext2fs.h @@ -17,6 +17,7 @@ #ifdef __REACTOS__ #include #include +typedef IO_STACK_LOCATION EXTENDED_IO_STACK_LOCATION, *PEXTENDED_IO_STACK_LOCATION; #endif #include #include diff --git a/drivers/filesystems/msfs/create.c b/drivers/filesystems/msfs/create.c index 1f47eb5c3d..45aa875481 100644 --- a/drivers/filesystems/msfs/create.c +++ b/drivers/filesystems/msfs/create.c @@ -107,7 +107,7 @@ NTSTATUS DEFAULTAPI MsfsCreateMailslot(PDEVICE_OBJECT DeviceObject, PIRP Irp) { -PEXTENDED_IO_STACK_LOCATION IoStack; +PIO_STACK_LOCATION IoStack; PFILE_OBJECT FileObject; PMSFS_DEVICE_EXTENSION DeviceExtension; PMSFS_FCB Fcb; @@ -119,7 +119,7 @@ MsfsCreateMailslot(PDEVICE_OBJECT DeviceObject, DPRINT("MsfsCreateMailslot(DeviceObject %p Irp %p)\n", DeviceObject, Irp); -IoStack = (PEXTENDED_IO_STACK_LOCATION)IoGetCurrentIrpStackLocation(Irp); +IoStack = IoGetCurrentIrpStackLocation(Irp); DeviceExtension = DeviceObject->DeviceExtension; FileObject = IoStack->FileObject; Buffer = IoStack->Parameters.CreateMailslot.Parameters; diff --git a/drivers/filesystems/npfs/create.c b/drivers/filesystems/npfs/create.c index 96e60e306a..da2f967faf 100644 --- a/drivers/filesystems/npfs/create.c +++ b/drivers/filesystems/npfs/create.c @@ -361,7 +361,7 @@ NpFsdCreate(IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp) { IO_STATUS_BLOCK IoStatus; -PEXTENDED_IO_STACK_LOCATION IoStack; +PIO_STACK_LOCATION IoStack; UNICODE_STRING FileName; PFILE_OBJECT FileObject; PFILE_OBJECT RelatedFileObject; @@ -375,7 +375,7 @@ NpFsdCreate(IN PDEVICE_OBJECT DeviceObject, TRACE("Entered\n"); InitializeListHead(); -IoStack = (PEXTENDED_IO_STACK_LOCATION)IoGetCurrentIrpStackLocation(Irp); +IoStack = IoGetCurrentIrpStackLocation(Irp); FileObject = IoStack->FileObject; RelatedFileObject = FileObject->RelatedFileObject; FileName = FileObject->FileName; @@ -791,7 +791,7 @@ NTAPI NpFsdCreateNamedPipe(IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp) { -PEXTENDED_IO_STACK_LOCATION IoStack; +PIO_STACK_LOCATION IoStack; PFILE_OBJECT FileObject; PFILE_OBJECT RelatedFileObject; USHORT Disposition, ShareAccess; @@ -807,7 +807,7 @@ NpFsdCreateNamedPipe(IN PDEVICE_OBJECT DeviceObject, InitializeListHead(); Process = IoGetRequestorProcess(Irp); -IoStack = (PEXTENDED_IO_STACK_LOCATION) IoGetCurrentIrpStackLocation(Irp); +IoStack = IoGetCurrentIrpStackLocation(Irp); FileObject = IoStack->FileObject; RelatedFileObject = FileObject->RelatedFileObject; diff --git a/drivers/filesystems/reiserfs/inc/rfsd.h b/drivers/filesystems/reiserfs/inc/rfsd.h index 2f36e786c4..5d8b200d01 100644 --- a/drivers/filesystems/reiserfs/inc/rfsd.h +++ b/drivers/filesystems/reiserfs/inc/rfsd.h @@ -26,6 +26,7 @@ #ifdef __REACTOS__ #include #include +typedef IO_STACK_LOCATION EXTENDED_IO_STACK_LOCATION, *PEXTENDED_IO_STACK_LOCATION; #endif typedef struct reiserfs_super_block_v1 RFSD_SUPER_BLOCK, *PRFSD_SUPER_BLOCK; diff --git a/ntoskrnl/io/iomgr/file.c b/ntoskrnl/io/iomgr/file.c index 71863ccb42..15504adaca 100644 --- a/ntoskrnl/io/iomgr/file.c +++ b/ntoskrnl/io/iomgr/file.c @@ -285,7 +285,7 @@ IopParseDevice(IN PVOID ParseObject, PFILE_OBJECT FileObject; PVPB Vpb = NULL; PIRP Irp; -PEXTENDED_IO_STACK_LOCATION StackLoc; +PIO_STACK_LOCATION StackLoc; IO_SECURITY_CONTEXT SecurityContext; IO_STATUS_BLOCK IoStatusBlock; BOOLEAN DirectOpen = FALSE, OpenCancelled, UseDummyFile; @@ -673,7 +673,7 @@ IopParseDevice(IN PVOID ParseObject, SecurityContext.FullCreateOptions = OpenPacket->CreateOptions; /* Get the I/O Stack location */ -StackLoc = (PEXTENDED_IO_STACK_LOCATION)IoGetNextIrpStackLocation(Irp); +StackLoc = IoGetNextIrpStackLocation(Irp); StackLoc->Control = 0; /* Check what kind of file
[ros-diffs] 04/10: [NDK] Fix the type of KPROCESS::ActiveProcessors Also fix related logic in KiSwapProcess
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=de1b195837867be3757660f236d07e4f0cdf206a commit de1b195837867be3757660f236d07e4f0cdf206a Author: Timo Kreuzer AuthorDate: Sat Feb 10 20:30:14 2018 +0100 Commit: Timo Kreuzer CommitDate: Sun Jul 1 14:45:21 2018 +0200 [NDK] Fix the type of KPROCESS::ActiveProcessors Also fix related logic in KiSwapProcess --- ntoskrnl/ke/amd64/stubs.c | 8 +++- sdk/include/ndk/ketypes.h | 2 +- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/ntoskrnl/ke/amd64/stubs.c b/ntoskrnl/ke/amd64/stubs.c index f63485eb78..9f8ed16e0d 100644 --- a/ntoskrnl/ke/amd64/stubs.c +++ b/ntoskrnl/ke/amd64/stubs.c @@ -278,13 +278,11 @@ KiSwapProcess(IN PKPROCESS NewProcess, IN PKPROCESS OldProcess) { PKIPCR Pcr = (PKIPCR)KeGetPcr(); -#ifdef CONFIG_SMP -LONG SetMember; +#ifdef CONFIG_SMP /* Update active processor mask */ -SetMember = (LONG)Pcr->SetMember; -InterlockedXor((PLONG)>ActiveProcessors, SetMember); -InterlockedXor((PLONG)>ActiveProcessors, SetMember); +InterlockedXor64((PLONG64)>ActiveProcessors, Pcr->Prcb.SetMember); +InterlockedXor64((PLONG64)>ActiveProcessors, Pcr->Prcb.SetMember); #endif /* Update CR3 */ diff --git a/sdk/include/ndk/ketypes.h b/sdk/include/ndk/ketypes.h index 839a0d77d7..7a8c614a8d 100644 --- a/sdk/include/ndk/ketypes.h +++ b/sdk/include/ndk/ketypes.h @@ -1988,7 +1988,7 @@ typedef struct _KPROCESS UCHAR Iopl; UCHAR Unused; #endif -volatile ULONG ActiveProcessors; +volatile KAFFINITY ActiveProcessors; ULONG KernelTime; ULONG UserTime; LIST_ENTRY ReadyListHead;
[ros-diffs] 06/10: [XDK][NDK] Fix IO_STACK_LOCATION alignments
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=8719252e48efe62e9c8c9af0c0e70b2c2981fb9b commit 8719252e48efe62e9c8c9af0c0e70b2c2981fb9b Author: Timo Kreuzer AuthorDate: Fri Feb 16 21:32:46 2018 +0100 Commit: Timo Kreuzer CommitDate: Sun Jul 1 14:45:21 2018 +0200 [XDK][NDK] Fix IO_STACK_LOCATION alignments * Also add missing DIRECTORY_NOTIFY_INFORMATION_CLASS --- sdk/include/ndk/iotypes.h | 74 +-- sdk/include/xdk/iotypes.h | 41 ++ 2 files changed, 75 insertions(+), 40 deletions(-) diff --git a/sdk/include/ndk/iotypes.h b/sdk/include/ndk/iotypes.h index 0124da6125..ed4a9facc2 100644 --- a/sdk/include/ndk/iotypes.h +++ b/sdk/include/ndk/iotypes.h @@ -940,9 +940,6 @@ typedef struct _EXTENDED_DRIVER_EXTENSION // // Extended I/O Stack Location Structure // -#if !defined(_ALPHA_) -#include -#endif typedef struct _EXTENDED_IO_STACK_LOCATION { UCHAR MajorFunction; @@ -955,15 +952,15 @@ typedef struct _EXTENDED_IO_STACK_LOCATION { PIO_SECURITY_CONTEXT SecurityContext; ULONG Options; -USHORT FileAttributes; +USHORT POINTER_ALIGNMENT FileAttributes; USHORT ShareAccess; -ULONG EaLength; +ULONG POINTER_ALIGNMENT EaLength; } Create; struct { PIO_SECURITY_CONTEXT SecurityContext; ULONG Options; -USHORT Reserved; +USHORT POINTER_ALIGNMENT Reserved; USHORT ShareAccess; struct _NAMED_PIPE_CREATE_PARAMETERS *Parameters; } CreatePipe; @@ -971,20 +968,20 @@ typedef struct _EXTENDED_IO_STACK_LOCATION { PIO_SECURITY_CONTEXT SecurityContext; ULONG Options; -USHORT Reserved; +USHORT POINTER_ALIGNMENT Reserved; USHORT ShareAccess; struct _MAILSLOT_CREATE_PARAMETERS *Parameters; } CreateMailslot; struct { ULONG Length; -ULONG Key; +ULONG POINTER_ALIGNMENT Key; LARGE_INTEGER ByteOffset; } Read; struct { ULONG Length; -ULONG Key; +ULONG POINTER_ALIGNMENT Key; LARGE_INTEGER ByteOffset; } Write; struct @@ -992,23 +989,29 @@ typedef struct _EXTENDED_IO_STACK_LOCATION ULONG Length; PUNICODE_STRING FileName; FILE_INFORMATION_CLASS FileInformationClass; -ULONG FileIndex; +ULONG POINTER_ALIGNMENT FileIndex; } QueryDirectory; struct { ULONG Length; -ULONG CompletionFilter; +ULONG POINTER_ALIGNMENT CompletionFilter; } NotifyDirectory; struct { ULONG Length; -FILE_INFORMATION_CLASS FileInformationClass; +ULONG POINTER_ALIGNMENT CompletionFilter; +enum _DIRECTORY_NOTIFY_INFORMATION_CLASS POINTER_ALIGNMENT DirectoryNotifyInformationClass; +} NotifyDirectoryEx; +struct +{ +ULONG Length; +FILE_INFORMATION_CLASS POINTER_ALIGNMENT FileInformationClass; } QueryFile; struct { ULONG Length; -FILE_INFORMATION_CLASS FileInformationClass; -PFILE_OBJECT FileObject; +FILE_INFORMATION_CLASS POINTER_ALIGNMENT FileInformationClass; +PFILE_OBJECT FileObject; union { struct @@ -1025,7 +1028,7 @@ typedef struct _EXTENDED_IO_STACK_LOCATION ULONG Length; PVOID EaList; ULONG EaListLength; -ULONG EaIndex; +ULONG POINTER_ALIGNMENT EaIndex; } QueryEa; struct { @@ -1034,31 +1037,31 @@ typedef struct _EXTENDED_IO_STACK_LOCATION struct { ULONG Length; -FS_INFORMATION_CLASS FsInformationClass; +FS_INFORMATION_CLASS POINTER_ALIGNMENT FsInformationClass; } QueryVolume; struct { ULONG Length; -FS_INFORMATION_CLASS FsInformationClass; +FS_INFORMATION_CLASS POINTER_ALIGNMENT FsInformationClass; } SetVolume; struct { ULONG OutputBufferLength; -ULONG InputBufferLength; -ULONG FsControlCode; +ULONG POINTER_ALIGNMENT InputBufferLength; +ULONG POINTER_ALIGNMENT FsControlCode; PVOID Type3InputBuffer; } FileSystemControl; struct { PLARGE_INTEGER Length; -ULONG Key; +ULONG POINTER_ALIGNMENT Key; LARGE_INTEGER ByteOffset; } LockControl; struct { ULONG OutputBufferLength; -ULONG InputBufferLength; -
[ros-diffs] 05/10: [XDK] Stop randomly packing structures half throughout ntifs.h / wdm.h Nothing in there should be packed!
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=03c86af7d55d4e249e493d61f4b110859085e400 commit 03c86af7d55d4e249e493d61f4b110859085e400 Author: Timo Kreuzer AuthorDate: Sun Feb 11 21:48:36 2018 +0100 Commit: Timo Kreuzer CommitDate: Sun Jul 1 14:45:21 2018 +0200 [XDK] Stop randomly packing structures half throughout ntifs.h / wdm.h Nothing in there should be packed! --- sdk/include/xdk/iotypes.h| 10 ++ sdk/include/xdk/ntifs.template.h | 4 2 files changed, 2 insertions(+), 12 deletions(-) diff --git a/sdk/include/xdk/iotypes.h b/sdk/include/xdk/iotypes.h index 7f074f5199..d9032b7255 100644 --- a/sdk/include/xdk/iotypes.h +++ b/sdk/include/xdk/iotypes.h @@ -2741,9 +2741,6 @@ typedef struct _ACPI_INTERFACE_STANDARD2 { PUNREGISTER_FOR_DEVICE_NOTIFICATIONS2 UnregisterForDeviceNotifications; } ACPI_INTERFACE_STANDARD2, *PACPI_INTERFACE_STANDARD2; -#if !defined(_AMD64_) && !defined(_IA64_) -#include -#endif typedef struct _IO_STACK_LOCATION { UCHAR MajorFunction; UCHAR MinorFunction; @@ -2813,8 +2810,8 @@ typedef struct _IO_STACK_LOCATION { } SetVolume; struct { ULONG OutputBufferLength; - ULONG InputBufferLength; - ULONG FsControlCode; + ULONG POINTER_ALIGNMENT InputBufferLength; + ULONG POINTER_ALIGNMENT FsControlCode; PVOID Type3InputBuffer; } FileSystemControl; struct { @@ -2927,9 +2924,6 @@ typedef struct _IO_STACK_LOCATION { PIO_COMPLETION_ROUTINE CompletionRoutine; PVOID Context; } IO_STACK_LOCATION, *PIO_STACK_LOCATION; -#if !defined(_AMD64_) && !defined(_IA64_) -#include -#endif /* IO_STACK_LOCATION.Control */ diff --git a/sdk/include/xdk/ntifs.template.h b/sdk/include/xdk/ntifs.template.h index 7ad62ca88d..c38bf08ddb 100644 --- a/sdk/include/xdk/ntifs.template.h +++ b/sdk/include/xdk/ntifs.template.h @@ -1282,8 +1282,6 @@ typedef struct _QUERY_PATH_RESPONSE { #define IOCTL_VOLSNAP_FLUSH_AND_HOLD_WRITES CTL_CODE(VOLSNAPCONTROLTYPE, 0, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS) /* FIXME : These definitions below don't belong here (or anywhere in ddk really) */ -#pragma pack(push,4) - #ifndef VER_PRODUCTBUILD #define VER_PRODUCTBUILD 1 #endif @@ -1789,8 +1787,6 @@ RtlSetSaclSecurityDescriptor ( #endif -#pragma pack(pop) - #ifdef __cplusplus } #endif
[ros-diffs] 08/10: [NDK] Fix alignment macros and add missing ones Remove obsolete ALIGN_UP_BY macro definition
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=3b78272d3956228bb39026d7090c2b2bf14dbb87 commit 3b78272d3956228bb39026d7090c2b2bf14dbb87 Author: Timo Kreuzer AuthorDate: Thu Feb 15 22:14:11 2018 +0100 Commit: Timo Kreuzer CommitDate: Sun Jul 1 14:45:21 2018 +0200 [NDK] Fix alignment macros and add missing ones Remove obsolete ALIGN_UP_BY macro definition --- sdk/include/ndk/umtypes.h | 28 sdk/lib/rtl/rxact.c | 2 -- 2 files changed, 20 insertions(+), 10 deletions(-) diff --git a/sdk/include/ndk/umtypes.h b/sdk/include/ndk/umtypes.h index e9d192a40e..3037151b6b 100644 --- a/sdk/include/ndk/umtypes.h +++ b/sdk/include/ndk/umtypes.h @@ -73,17 +73,29 @@ Author: // // Alignment Macros // -#define ALIGN_DOWN(s, t) \ -((ULONG)(s) & ~(sizeof(t) - 1)) +#define ALIGN_DOWN_BY(size, align) \ +((ULONG_PTR)(size) & ~((ULONG_PTR)(align) - 1)) -#define ALIGN_UP(s, t) \ -(ALIGN_DOWN(((ULONG)(s) + sizeof(t) - 1), t)) +#define ALIGN_UP_BY(size, align) \ +(ALIGN_DOWN_BY(((ULONG_PTR)(size) + align - 1), align)) -#define ALIGN_DOWN_POINTER(p, t) \ -((PVOID)((ULONG_PTR)(p) & ~((ULONG_PTR)sizeof(t) - 1))) +#define ALIGN_DOWN_POINTER_BY(ptr, align) \ +((PVOID)ALIGN_DOWN_BY(ptr, align)) -#define ALIGN_UP_POINTER(p, t) \ -(ALIGN_DOWN_POINTER(((ULONG_PTR)(p) + sizeof(t) - 1), t)) +#define ALIGN_UP_POINTER_BY(ptr, align) \ +((PVOID)ALIGN_UP_BY(ptr, align)) + +#define ALIGN_DOWN(size, type) \ +ALIGN_DOWN_BY(size, sizeof(type)) + +#define ALIGN_UP(size, type) \ +ALIGN_UP_BY(size, sizeof(type)) + +#define ALIGN_DOWN_POINTER(ptr, type) \ +ALIGN_DOWN_POINTER_BY(ptr, sizeof(type)) + +#define ALIGN_UP_POINTER(ptr, type) \ +ALIGN_UP_POINTER_BY(ptr, sizeof(type)) // // Native API Return Value Macros diff --git a/sdk/lib/rtl/rxact.c b/sdk/lib/rtl/rxact.c index cc9f9609a6..42936872c6 100644 --- a/sdk/lib/rtl/rxact.c +++ b/sdk/lib/rtl/rxact.c @@ -56,8 +56,6 @@ enum RXactSetValueKey = 2, }; -#define ALIGN_UP_BY ROUND_UP - /* FUNCTIONS */ static
[ros-diffs] 10/10: [SDK] Fix 64 bit issues
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=e39876dab780fab79d6aa061049a098abd3a4ebc commit e39876dab780fab79d6aa061049a098abd3a4ebc Author: Timo Kreuzer AuthorDate: Mon Apr 23 11:58:34 2018 +0200 Commit: Timo Kreuzer CommitDate: Sun Jul 1 14:45:21 2018 +0200 [SDK] Fix 64 bit issues --- dll/win32/browseui/parsecmdline.cpp | 2 +- sdk/include/ndk/rtltypes.h | 2 +- sdk/include/reactos/browseui_undoc.h | 2 +- sdk/lib/inflib/infget.c | 22 +++--- sdk/lib/skiplist/skiplist_test.c | 18 +- 5 files changed, 23 insertions(+), 23 deletions(-) diff --git a/dll/win32/browseui/parsecmdline.cpp b/dll/win32/browseui/parsecmdline.cpp index acf617607f..ad2b4fa475 100644 --- a/dll/win32/browseui/parsecmdline.cpp +++ b/dll/win32/browseui/parsecmdline.cpp @@ -226,7 +226,7 @@ static LPITEMIDLIST _GetDocumentsPidl() * SHExplorerParseCmdLine [BROWSEUI.107] */ extern "C" -UINT +UINT_PTR WINAPI SHExplorerParseCmdLine(ExplorerCommandLineParseResults * pInfo) { diff --git a/sdk/include/ndk/rtltypes.h b/sdk/include/ndk/rtltypes.h index b526f9ea04..7070564389 100644 --- a/sdk/include/ndk/rtltypes.h +++ b/sdk/include/ndk/rtltypes.h @@ -310,7 +310,7 @@ C_ASSERT(HEAP_CREATE_VALID_MASK == 0x0007F0FF); // // Activation Contexts // -#define INVALID_ACTIVATION_CONTEXT (PVOID)0x +#define INVALID_ACTIVATION_CONTEXT ((PVOID)(LONG_PTR)-1) // // C++ CONST casting diff --git a/sdk/include/reactos/browseui_undoc.h b/sdk/include/reactos/browseui_undoc.h index 4ea2dcf605..0bc1d12db6 100644 --- a/sdk/include/reactos/browseui_undoc.h +++ b/sdk/include/reactos/browseui_undoc.h @@ -107,7 +107,7 @@ void WINAPI InitOCHostClass(long param8); long WINAPI SHOpenFolderWindow(PIE_THREAD_PARAM_BLOCK parameters); void WINAPI SHCreateSavedWindows(void); BOOL WINAPI SHCreateFromDesktop(PEXPLORER_CMDLINE_PARSE_RESULTS parseResults); -UINT WINAPI SHExplorerParseCmdLine(PEXPLORER_CMDLINE_PARSE_RESULTS pParseResults); +UINT_PTR WINAPI SHExplorerParseCmdLine(PEXPLORER_CMDLINE_PARSE_RESULTS pParseResults); void WINAPI UEMRegisterNotify(long param8, long paramC); HRESULT WINAPI SHCreateBandForPidl(LPCITEMIDLIST param8, IUnknown *paramC, BOOL param10); HRESULT WINAPI SHPidlFromDataObject(IDataObject *param8, long *paramC, long param10, FILEDESCRIPTORW *param14); diff --git a/sdk/lib/inflib/infget.c b/sdk/lib/inflib/infget.c index f148c59273..5e1ccdbf3b 100644 --- a/sdk/lib/inflib/infget.c +++ b/sdk/lib/inflib/infget.c @@ -13,11 +13,11 @@ #define NDEBUG #include -static unsigned int +static size_t InfpSubstituteString(PINFCACHE Inf, const WCHAR *text, WCHAR *buffer, - unsigned int size); + size_t size); static void ShortToHex(PWCHAR Buffer, @@ -36,7 +36,7 @@ ShortToHex(PWCHAR Buffer, static PCWSTR InfpGetSubstitutionString(PINFCACHE Inf, PCWSTR str, - unsigned int *len, + size_t *len, BOOL no_trailing_slash) { static const WCHAR percent = '%'; @@ -105,7 +105,7 @@ InfpGetSubstitutionString(PINFCACHE Inf, if (Status == STATUS_SUCCESS) { *len = strlenW(Data); -DPRINT("Substitute: %S Length: %ul\n", Data, *len); +DPRINT("Substitute: %S Length: %zu\n", Data, *len); return Data; } @@ -116,14 +116,14 @@ InfpGetSubstitutionString(PINFCACHE Inf, /* do string substitutions on the specified text */ /* the buffer is assumed to be large enough */ /* returns necessary length not including terminating null */ -static unsigned int +static size_t InfpSubstituteString(PINFCACHE Inf, PCWSTR text, PWSTR buffer, - unsigned int size) + size_t size) { const WCHAR *start, *subst, *p; -unsigned int len, total = 0; +size_t len, total = 0; int inside = 0; if (!buffer) size = MAX_INF_STRING_LENGTH + 1; @@ -133,7 +133,7 @@ InfpSubstituteString(PINFCACHE Inf, inside = !inside; if (inside) /* start of a %xx% string */ { -len = (unsigned int)(p - start); +len = (p - start); if (len > size - 1) len = size - 1; if (buffer) memcpy( buffer + total, start, len * sizeof(WCHAR) ); total += len; @@ -142,12 +142,12 @@ InfpSubstituteString(PINFCACHE Inf, } else /* end of the %xx% string, find substitution */ { -len = (unsigned int)(p - start - 1); +len = (p - start - 1); subst = InfpGetSubstitutionString( Inf, start + 1, , p[1] == '\\' ); if (!subst) { subst = start; -len = (unsigned int)(p - start + 1); +len = (p - start + 1);
[ros-diffs] 01/01: [TRANSLATION][TREE] Polish translation of tree utility (#654)
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=73194a8ea97da98140741ec8a835943c48217f78 commit 73194a8ea97da98140741ec8a835943c48217f78 Author: Paweł Cholewa AuthorDate: Sun Jul 1 16:04:14 2018 +0200 Commit: Hermès BÉLUSCA - MAÏTO CommitDate: Sun Jul 1 16:04:14 2018 +0200 [TRANSLATION][TREE] Polish translation of tree utility (#654) --- base/applications/cmdutils/tree/lang/pl-PL.rc | 12 base/applications/cmdutils/tree/tree.rc | 3 +++ 2 files changed, 15 insertions(+) diff --git a/base/applications/cmdutils/tree/lang/pl-PL.rc b/base/applications/cmdutils/tree/lang/pl-PL.rc new file mode 100644 index 00..a897058cef --- /dev/null +++ b/base/applications/cmdutils/tree/lang/pl-PL.rc @@ -0,0 +1,12 @@ +LANGUAGE LANG_POLISH, SUBLANG_DEFAULT + +STRINGTABLE +BEGIN +IDS_USAGE "Przedstawia graficznie strukturę folderów na dysku lub w określonej ścieżce.\n\n\ +TREE [dysk:][ścieżka] [/F] [/A]\n\n\ +\t/F Wyświetla nazwy plików w poszczególnych folderach.\n\ +\t/A Używa znaków ASCII zamiast znaków rozszerzonych.\n" +IDS_NO_SUBDIRECTORIES "Nie ma żadnych podfolderów" +IDS_FOLDER_PATH "Zmienna PATH folderu\n" +IDS_VOL_SERIAL "Numer seryjny woluminu to %x:%x\n" +END diff --git a/base/applications/cmdutils/tree/tree.rc b/base/applications/cmdutils/tree/tree.rc index 8092b180c0..c06f93e3e1 100644 --- a/base/applications/cmdutils/tree/tree.rc +++ b/base/applications/cmdutils/tree/tree.rc @@ -23,6 +23,9 @@ LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL #ifdef LANGUAGE_IT_IT #include "lang/it-IT.rc" #endif +#ifdef LANGUAGE_PL_PL +#include "lang/pl-PL.rc" +#endif #ifdef LANGUAGE_RO_RO #include "lang/ro-RO.rc" #endif
[ros-diffs] 01/01: [CMAKE] Change winspool.drv to winspool again. CORE-14781
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=a3ddb8a4c26bf392a3726a11ae9d53dc4a05ac0b commit a3ddb8a4c26bf392a3726a11ae9d53dc4a05ac0b Author: Mark Jansen AuthorDate: Sun Jul 1 19:21:59 2018 +0200 Commit: Mark Jansen CommitDate: Sun Jul 1 19:21:59 2018 +0200 [CMAKE] Change winspool.drv to winspool again. CORE-14781 --- sdk/cmake/baseaddress.cmake | 2 +- sdk/cmake/baseaddress_dwarf.cmake | 2 +- sdk/cmake/baseaddress_msvc.cmake | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/sdk/cmake/baseaddress.cmake b/sdk/cmake/baseaddress.cmake index ed9f08f833..5ba0611cbd 100644 --- a/sdk/cmake/baseaddress.cmake +++ b/sdk/cmake/baseaddress.cmake @@ -14,7 +14,7 @@ set(baseaddress_shlwapi0x7c0c) set(baseaddress_rpcrt4 0x7bff) set(baseaddress_comctl32 0x7be1) set(baseaddress_ole32 0x7bc3) -set(baseaddress_winspool.drv 0x7bbe) +set(baseaddress_winspool 0x7bbe) set(baseaddress_winmm 0x7bb2) set(baseaddress_comdlg32 0x7ba1) set(baseaddress_shell320x7b15) diff --git a/sdk/cmake/baseaddress_dwarf.cmake b/sdk/cmake/baseaddress_dwarf.cmake index 1d38a95c60..5b66282d4f 100644 --- a/sdk/cmake/baseaddress_dwarf.cmake +++ b/sdk/cmake/baseaddress_dwarf.cmake @@ -14,7 +14,7 @@ set(baseaddress_shlwapi0x7be8) set(baseaddress_rpcrt4 0x7bd7) set(baseaddress_comctl32 0x7bb3) set(baseaddress_ole32 0x7b86) -set(baseaddress_winspool.drv 0x7b7f) +set(baseaddress_winspool 0x7b7f) set(baseaddress_winmm 0x7b72) set(baseaddress_comdlg32 0x7b60) set(baseaddress_shell320x7abb) diff --git a/sdk/cmake/baseaddress_msvc.cmake b/sdk/cmake/baseaddress_msvc.cmake index 147dff061e..b4aa6468c1 100644 --- a/sdk/cmake/baseaddress_msvc.cmake +++ b/sdk/cmake/baseaddress_msvc.cmake @@ -14,7 +14,7 @@ set(baseaddress_shlwapi0x7c2e) set(baseaddress_rpcrt4 0x7c25) set(baseaddress_comctl32 0x7c10) set(baseaddress_ole32 0x7bfc) -set(baseaddress_winspool.drv 0x7bf8) +set(baseaddress_winspool 0x7bf8) set(baseaddress_winmm 0x7bee) set(baseaddress_comdlg32 0x7be0) set(baseaddress_shell320x7b63)
[ros-diffs] 01/02: [LICCPA] Make the License Manager GUI build and make it visible (again)
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=2fdb4d99c79a86343d13a7f0a8b6a03588c8 commit 2fdb4d99c79a86343d13a7f0a8b6a03588c8 Author: Eric Kohl AuthorDate: Sun Jul 1 11:02:10 2018 +0200 Commit: Eric Kohl CommitDate: Sun Jul 1 17:28:28 2018 +0200 [LICCPA] Make the License Manager GUI build and make it visible (again) - Add the missing CMakeLists.txt file. - Comment-out an unused variable. - Make WM_INITDIALOG return TRUE, so that the dialog gets visible. --- dll/cpl/liccpa/CMakeLists.txt | 19 +++ dll/cpl/liccpa/liccpa.c | 9 ++--- dll/cpl/liccpa/liccpa.h | 23 ++- 3 files changed, 43 insertions(+), 8 deletions(-) diff --git a/dll/cpl/liccpa/CMakeLists.txt b/dll/cpl/liccpa/CMakeLists.txt new file mode 100644 index 00..c5871dbef3 --- /dev/null +++ b/dll/cpl/liccpa/CMakeLists.txt @@ -0,0 +1,19 @@ + +spec2def(liccpa.cpl liccpa.spec) + +list(APPEND SOURCE +liccpa.c +liccpa.h) + +file(GLOB liccpa_rc_deps resources/*.*) +add_rc_deps(liccpa.rc ${liccpa_rc_deps}) + +add_library(liccpa SHARED +${SOURCE} +liccpa.rc +${CMAKE_CURRENT_BINARY_DIR}/liccpa.def) + +set_module_type(liccpa cpl UNICODE) +add_importlibs(liccpa advapi32 user32 gdi32 msvcrt kernel32 ntdll) +add_pch(liccpa liccpa.h SOURCE) +add_cd_file(TARGET liccpa DESTINATION reactos/system32 FOR all) diff --git a/dll/cpl/liccpa/liccpa.c b/dll/cpl/liccpa/liccpa.c index 860954bcf2..50b4fbb426 100644 --- a/dll/cpl/liccpa/liccpa.c +++ b/dll/cpl/liccpa/liccpa.c @@ -10,11 +10,6 @@ * This application does almost nothing and its really good at it. */ -#include -#include -#include - -#include "resource.h" #include "liccpa.h" HINSTANCE hApplet = 0; @@ -26,12 +21,12 @@ DlgMainProc(HWND hwndDlg, WPARAM wParam, LPARAM lParam) { -TCHAR szString[256]; +//TCHAR szString[256]; switch (uMsg) { case WM_INITDIALOG: -break; +return TRUE; case WM_COMMAND: switch (HIWORD(wParam)) diff --git a/dll/cpl/liccpa/liccpa.h b/dll/cpl/liccpa/liccpa.h index 694663d208..45c010b5db 100644 --- a/dll/cpl/liccpa/liccpa.h +++ b/dll/cpl/liccpa/liccpa.h @@ -1,4 +1,23 @@ -#pragma once +#ifndef _LICCPA_H +#define _LICCPA_H + +#include + +#define WIN32_NO_STATUS +#define _INC_WINDOWS +#define COM_NO_WINDOWS_H + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "resource.h" typedef struct { @@ -10,4 +29,6 @@ typedef struct extern HINSTANCE hApplet; +#endif /* _LICCPA_H */ + /* EOF */
[ros-diffs] 01/01: [SDK] Add gen_baseaddress.py This tool was already used to calculate the last baseaddress update. It is based on baseaddress.sh that has been floating around. CORE-11382
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=5a9dc5e791ddca0c0ae3f7fe1074d7ecad6ffaef commit 5a9dc5e791ddca0c0ae3f7fe1074d7ecad6ffaef Author: Mark Jansen AuthorDate: Sun Jul 1 20:17:46 2018 +0200 Commit: Mark Jansen CommitDate: Sun Jul 1 20:17:46 2018 +0200 [SDK] Add gen_baseaddress.py This tool was already used to calculate the last baseaddress update. It is based on baseaddress.sh that has been floating around. CORE-11382 --- sdk/cmake/baseaddress.cmake | 5 +- sdk/cmake/baseaddress_dwarf.cmake | 5 +- sdk/cmake/baseaddress_msvc.cmake | 5 +- sdk/tools/gen_baseaddress.py | 278 ++ 4 files changed, 287 insertions(+), 6 deletions(-) diff --git a/sdk/cmake/baseaddress.cmake b/sdk/cmake/baseaddress.cmake index 5ba0611cbd..dae966b723 100644 --- a/sdk/cmake/baseaddress.cmake +++ b/sdk/cmake/baseaddress.cmake @@ -1,3 +1,4 @@ +# Generated by sdk/tools/gen_baseaddress.py set(baseaddress_ntdll 0x7c92) # should be above 0x7c92 set(baseaddress_kernel32 0x7c6b) set(baseaddress_msvcrt 0x7c5f) @@ -62,7 +63,7 @@ set(baseaddress_sfc_os 0x79bf) set(baseaddress_snmpapi0x79bc) set(baseaddress_spoolss0x79b8) set(baseaddress_usp10 0x79b0) -# Extra found dlls +# Extra dlls set(baseaddress_acgenral 0x79ad) set(baseaddress_aclayers 0x79aa) set(baseaddress_acledit0x79a7) @@ -342,7 +343,7 @@ set(baseaddress_xinput1_3 0x7368) set(baseaddress_xinput9_1_00x7365) set(baseaddress_xmllite0x7361) set(baseaddress_zipfldr0x7357) -# Extra found files +# Extra files set(baseaddress_access 0x734f) set(baseaddress_appwiz 0x7347) set(baseaddress_cmicpl 0x7343) diff --git a/sdk/cmake/baseaddress_dwarf.cmake b/sdk/cmake/baseaddress_dwarf.cmake index 5b66282d4f..98d98b2eee 100644 --- a/sdk/cmake/baseaddress_dwarf.cmake +++ b/sdk/cmake/baseaddress_dwarf.cmake @@ -1,3 +1,4 @@ +# Generated by sdk/tools/gen_baseaddress.py set(baseaddress_ntdll 0x7c92) # should be above 0x7c92 set(baseaddress_kernel32 0x7c65) set(baseaddress_msvcrt 0x7c53) @@ -62,7 +63,7 @@ set(baseaddress_sfc_os 0x7906) set(baseaddress_snmpapi0x7902) set(baseaddress_spoolss0x78fd) set(baseaddress_usp10 0x78f3) -# Extra found dlls +# Extra dlls set(baseaddress_acgenral 0x78f0) set(baseaddress_aclayers 0x78ec) set(baseaddress_acledit0x78e9) @@ -342,7 +343,7 @@ set(baseaddress_xinput1_3 0x7152) set(baseaddress_xinput9_1_00x714f) set(baseaddress_xmllite0x7149) set(baseaddress_zipfldr0x713a) -# Extra found files +# Extra files set(baseaddress_access 0x7131) set(baseaddress_appwiz 0x7129) set(baseaddress_cmicpl 0x7125) diff --git a/sdk/cmake/baseaddress_msvc.cmake b/sdk/cmake/baseaddress_msvc.cmake index b4aa6468c1..fc9d2cd7a1 100644 --- a/sdk/cmake/baseaddress_msvc.cmake +++ b/sdk/cmake/baseaddress_msvc.cmake @@ -1,3 +1,4 @@ +# Generated by sdk/tools/gen_baseaddress.py set(baseaddress_ntdll 0x7c92) # should be above 0x7c92 set(baseaddress_kernel32 0x7c70) set(baseaddress_msvcrt 0x7c68) @@ -62,7 +63,7 @@ set(baseaddress_sfc_os 0x7a64) set(baseaddress_snmpapi0x7a62) set(baseaddress_spoolss0x7a5f) set(baseaddress_usp10 0x7a59) -# Extra found dlls +# Extra dlls set(baseaddress_acgenral 0x7a57) set(baseaddress_aclayers 0x7a55) set(baseaddress_acledit0x7a53) @@ -342,7 +343,7 @@ set(baseaddress_xinput1_3 0x75b2) set(baseaddress_xinput9_1_00x75b0) set(baseaddress_xmllite0x75ad) set(baseaddress_zipfldr0x75a8) -# Extra found files +# Extra files set(baseaddress_access 0x75a0) set(baseaddress_appwiz 0x7599) set(baseaddress_cmicpl 0x7596) diff --git a/sdk/tools/gen_baseaddress.py