Author: pschweitzer Date: Wed Aug 12 10:57:21 2009 New Revision: 42634
URL: http://svn.reactos.org/svn/reactos?rev=42634&view=rev Log: Other resync. Now branch builds up to ntoskrnl.
Modified: branches/pierre-fsd/dll/win32/kernel32/misc/console.c branches/pierre-fsd/dll/win32/kernel32/misc/dllmain.c branches/pierre-fsd/drivers/input/kbdclass/kbdclass.c branches/pierre-fsd/drivers/input/kbdclass/kbdclass.h branches/pierre-fsd/drivers/input/kbdclass/misc.c branches/pierre-fsd/include/reactos/win32k/ntgdityp.h
Modified: branches/pierre-fsd/dll/win32/kernel32/misc/console.c URL: http://svn.reactos.org/svn/reactos/branches/pierre-fsd/dll/win32/kernel32/mi... ============================================================================== --- branches/pierre-fsd/dll/win32/kernel32/misc/console.c [iso-8859-1] (original) +++ branches/pierre-fsd/dll/win32/kernel32/misc/console.c [iso-8859-1] Wed Aug 12 10:57:21 2009 @@ -22,6 +22,7 @@ extern BOOL WINAPI DefaultConsoleCtrlHandler(DWORD Event); extern __declspec(noreturn) VOID CALLBACK ConsoleControlDispatcher(DWORD CodeAndFlag); extern RTL_CRITICAL_SECTION ConsoleLock; +extern BOOL ConsoleInitialized; extern BOOL WINAPI IsDebuggerPresent(VOID);
/* GLOBALS *******************************************************************/ @@ -3345,7 +3346,6 @@ PCSR_API_MESSAGE Request; ULONG CsrRequest; NTSTATUS Status; - HANDLE hConsole;
Request = RtlAllocateHeap(RtlGetProcessHeap(), 0, @@ -3357,7 +3357,6 @@ }
CsrRequest = MAKE_CSR_API(GET_TITLE, CSR_CONSOLE); - Request->Data.GetTitleRequest.ConsoleHandle = hConsole;
Status = CsrClientCallServer(Request, NULL, @@ -3437,7 +3436,6 @@ ULONG CsrRequest; NTSTATUS Status; unsigned int c; - HANDLE hConsole;
Request = RtlAllocateHeap(RtlGetProcessHeap(), 0, max(sizeof(CSR_API_MESSAGE), @@ -3450,7 +3448,6 @@ }
CsrRequest = MAKE_CSR_API(SET_TITLE, CSR_CONSOLE); - Request->Data.SetTitleRequest.Console = hConsole;
for (c = 0; lpConsoleTitle[c] && c < CSRSS_MAX_TITLE_LENGTH; c++) Request->Data.SetTitleRequest.Title[c] = lpConsoleTitle[c]; @@ -3489,7 +3486,6 @@ ULONG CsrRequest; NTSTATUS Status; unsigned int c; - HANDLE hConsole;
Request = RtlAllocateHeap(RtlGetProcessHeap(), 0, @@ -3503,7 +3499,6 @@ }
CsrRequest = MAKE_CSR_API(SET_TITLE, CSR_CONSOLE); - Request->Data.SetTitleRequest.Console = hConsole;
for (c = 0; lpConsoleTitle[c] && c < CSRSS_MAX_TITLE_LENGTH; c++) Request->Data.SetTitleRequest.Title[c] = lpConsoleTitle[c]; @@ -3543,7 +3538,7 @@ CSR_API_MESSAGE Request; ULONG CsrRequest; NTSTATUS Status; - + if (dwDesiredAccess & ~(GENERIC_READ | GENERIC_WRITE) || dwShareMode & ~(FILE_SHARE_READ | FILE_SHARE_WRITE) || dwFlags != CONSOLE_TEXTMODE_BUFFER)
Modified: branches/pierre-fsd/dll/win32/kernel32/misc/dllmain.c URL: http://svn.reactos.org/svn/reactos/branches/pierre-fsd/dll/win32/kernel32/mi... ============================================================================== --- branches/pierre-fsd/dll/win32/kernel32/misc/dllmain.c [iso-8859-1] (original) +++ branches/pierre-fsd/dll/win32/kernel32/misc/dllmain.c [iso-8859-1] Wed Aug 12 10:57:21 2009 @@ -26,9 +26,9 @@ HANDLE hBaseDir = NULL; PPEB Peb; ULONG SessionId; +BOOL ConsoleInitialized = FALSE;
static BOOL DllInitialized = FALSE; -static BOOL ConsoleInitialized = FALSE;
BOOL WINAPI DllMain(HANDLE hInst, @@ -374,6 +374,7 @@ /* Delete DLL critical section */ if (ConsoleInitialized == TRUE) { + ConsoleInitialized = FALSE; RtlDeleteCriticalSection (&ConsoleLock); } RtlDeleteCriticalSection (&DllLock);
Modified: branches/pierre-fsd/drivers/input/kbdclass/kbdclass.c URL: http://svn.reactos.org/svn/reactos/branches/pierre-fsd/drivers/input/kbdclas... ============================================================================== --- branches/pierre-fsd/drivers/input/kbdclass/kbdclass.c [iso-8859-1] (original) +++ branches/pierre-fsd/drivers/input/kbdclass/kbdclass.c [iso-8859-1] Wed Aug 12 10:57:21 2009 @@ -37,7 +37,7 @@ IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp) { - DPRINT("IRP_MJ_CREATE\n"); + TRACE_(CLASS_NAME, "IRP_MJ_CREATE\n");
if (!((PCOMMON_DEVICE_EXTENSION)DeviceObject->DeviceExtension)->IsClassDO) return ForwardIrpAndForget(DeviceObject, Irp); @@ -54,7 +54,7 @@ IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp) { - DPRINT("IRP_MJ_CLOSE\n"); + TRACE_(CLASS_NAME, "IRP_MJ_CLOSE\n");
if (!((PCOMMON_DEVICE_EXTENSION)DeviceObject->DeviceExtension)->IsClassDO) return ForwardIrpAndForget(DeviceObject, Irp); @@ -71,7 +71,7 @@ IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp) { - DPRINT("IRP_MJ_CLEANUP\n"); + TRACE_(CLASS_NAME, "IRP_MJ_CLEANUP\n");
if (!((PCOMMON_DEVICE_EXTENSION)DeviceObject->DeviceExtension)->IsClassDO) return ForwardIrpAndForget(DeviceObject, Irp); @@ -92,7 +92,7 @@ KIRQL OldIrql; NTSTATUS Status;
- DPRINT("IRP_MJ_READ\n"); + TRACE_(CLASS_NAME, "IRP_MJ_READ\n");
ASSERT(DeviceExtension->Common.IsClassDO);
@@ -122,7 +122,7 @@ PCLASS_DEVICE_EXTENSION DeviceExtension; NTSTATUS Status = STATUS_NOT_SUPPORTED;
- DPRINT("IRP_MJ_DEVICE_CONTROL\n"); + TRACE_(CLASS_NAME, "IRP_MJ_DEVICE_CONTROL\n");
if (!((PCOMMON_DEVICE_EXTENSION)DeviceObject->DeviceExtension)->IsClassDO) return ForwardIrpAndForget(DeviceObject, Irp); @@ -170,7 +170,7 @@ break; } default: - DPRINT1("IRP_MJ_DEVICE_CONTROL / unknown I/O control code 0x%lx\n", + WARN_(CLASS_NAME, "IRP_MJ_DEVICE_CONTROL / unknown I/O control code 0x%lx\n", IoGetCurrentIrpStackLocation(Irp)->Parameters.DeviceIoControl.IoControlCode); ASSERT(FALSE); break; @@ -200,7 +200,7 @@ return ForwardIrpAndForget(DeviceObject, Irp); default: { - DPRINT1("Port DO stub for major function 0x%lx\n", + ERR_(CLASS_NAME, "Port DO stub for major function 0x%lx\n", IoGetCurrentIrpStackLocation(Irp)->MajorFunction); ASSERT(FALSE); } @@ -208,7 +208,7 @@ } else { - DPRINT1("Class DO stub for major function 0x%lx\n", + ERR_(CLASS_NAME, "Class DO stub for major function 0x%lx\n", IoGetCurrentIrpStackLocation(Irp)->MajorFunction); ASSERT(FALSE); } @@ -236,7 +236,7 @@ ParametersRegistryKey.Buffer = ExAllocatePoolWithTag(PagedPool, ParametersRegistryKey.MaximumLength, CLASS_TAG); if (!ParametersRegistryKey.Buffer) { - DPRINT("ExAllocatePoolWithTag() failed\n"); + WARN_(CLASS_NAME, "ExAllocatePoolWithTag() failed\n"); return STATUS_NO_MEMORY; } RtlCopyUnicodeString(&ParametersRegistryKey, RegistryPath); @@ -315,7 +315,7 @@ PCLASS_DEVICE_EXTENSION DeviceExtension; NTSTATUS Status;
- DPRINT("CreateClassDeviceObject(0x%p)\n", DriverObject); + TRACE_(CLASS_NAME, "CreateClassDeviceObject(0x%p)\n", DriverObject);
/* Create new device object */ DriverExtension = IoGetDriverObjectExtension(DriverObject, DriverObject); @@ -328,19 +328,19 @@ DeviceNameU.Buffer = ExAllocatePoolWithTag(PagedPool, DeviceNameU.MaximumLength, CLASS_TAG); if (!DeviceNameU.Buffer) { - DPRINT("ExAllocatePoolWithTag() failed\n"); + WARN_(CLASS_NAME, "ExAllocatePoolWithTag() failed\n"); return STATUS_NO_MEMORY; } Status = RtlAppendUnicodeToString(&DeviceNameU, L"\Device\"); if (!NT_SUCCESS(Status)) { - DPRINT("RtlAppendUnicodeToString() failed with status 0x%08lx\n", Status); + WARN_(CLASS_NAME, "RtlAppendUnicodeToString() failed with status 0x%08lx\n", Status); goto cleanup; } Status = RtlAppendUnicodeStringToString(&DeviceNameU, &DriverExtension->DeviceBaseName); if (!NT_SUCCESS(Status)) { - DPRINT("RtlAppendUnicodeStringToString() failed with status 0x%08lx\n", Status); + WARN_(CLASS_NAME, "RtlAppendUnicodeStringToString() failed with status 0x%08lx\n", Status); goto cleanup; } PrefixLength = DeviceNameU.MaximumLength - 4 * sizeof(WCHAR) - sizeof(UNICODE_NULL); @@ -360,12 +360,12 @@ goto cleanup; else if (Status != STATUS_OBJECT_NAME_COLLISION) { - DPRINT("IoCreateDevice() failed with status 0x%08lx\n", Status); + WARN_(CLASS_NAME, "IoCreateDevice() failed with status 0x%08lx\n", Status); goto cleanup; } DeviceId++; } - DPRINT("Too many devices starting with '\Device\%wZ'\n", &DriverExtension->DeviceBaseName); + WARN_(CLASS_NAME, "Too many devices starting with '\Device\%wZ'\n", &DriverExtension->DeviceBaseName); Status = STATUS_TOO_MANY_NAMES; cleanup: if (!NT_SUCCESS(Status)) @@ -468,7 +468,7 @@ SIZE_T InputCount = DataEnd - DataStart; SIZE_T ReadSize;
- DPRINT("ClassCallback()\n"); + TRACE_(CLASS_NAME, "ClassCallback()\n");
ASSERT(ClassDeviceExtension->Common.IsClassDO);
@@ -506,7 +506,7 @@ } KeReleaseSpinLock(&ClassDeviceExtension->SpinLock, OldIrql);
- DPRINT("Leaving ClassCallback()\n"); + TRACE_(CLASS_NAME, "Leaving ClassCallback()\n"); return TRUE; }
@@ -522,7 +522,7 @@ CONNECT_DATA ConnectData; NTSTATUS Status;
- DPRINT("Connecting PortDO %p to ClassDO %p\n", PortDO, ClassDO); + TRACE_(CLASS_NAME, "Connecting PortDO %p to ClassDO %p\n", PortDO, ClassDO);
KeInitializeEvent(&Event, NotificationEvent, FALSE);
@@ -578,7 +578,7 @@ KIRQL OldIrql; NTSTATUS Status;
- DPRINT("Destroying PortDO %p\n", PortDO); + TRACE_(CLASS_NAME, "Destroying PortDO %p\n", PortDO);
DeviceExtension = (PPORT_DEVICE_EXTENSION)PortDO->DeviceExtension; ClassDeviceExtension = DeviceExtension->ClassDO->DeviceExtension; @@ -634,7 +634,7 @@ PPORT_DEVICE_EXTENSION DeviceExtension = NULL; NTSTATUS Status;
- DPRINT("ClassAddDevice called. Pdo = 0x%p\n", Pdo); + TRACE_(CLASS_NAME, "ClassAddDevice called. Pdo = 0x%p\n", Pdo);
DriverExtension = IoGetDriverObjectExtension(DriverObject, DriverObject);
@@ -653,7 +653,7 @@ &Fdo); if (!NT_SUCCESS(Status)) { - DPRINT("IoCreateDevice() failed with status 0x%08lx\n", Status); + WARN_(CLASS_NAME, "IoCreateDevice() failed with status 0x%08lx\n", Status); goto cleanup; } IoSetStartIoAttributes(Fdo, TRUE, TRUE); @@ -666,7 +666,7 @@ Status = IoAttachDeviceToDeviceStackSafe(Fdo, Pdo, &DeviceExtension->LowerDevice); if (!NT_SUCCESS(Status)) { - DPRINT("IoAttachDeviceToDeviceStackSafe() failed with status 0x%08lx\n", Status); + WARN_(CLASS_NAME, "IoAttachDeviceToDeviceStackSafe() failed with status 0x%08lx\n", Status); goto cleanup; } if (DeviceExtension->LowerDevice->Flags & DO_POWER_PAGABLE) @@ -686,14 +686,14 @@ &DeviceExtension->ClassDO); if (!NT_SUCCESS(Status)) { - DPRINT("CreateClassDeviceObject() failed with status 0x%08lx\n", Status); + WARN_(CLASS_NAME, "CreateClassDeviceObject() failed with status 0x%08lx\n", Status); goto cleanup; } } Status = ConnectPortDriver(Fdo, DeviceExtension->ClassDO); if (!NT_SUCCESS(Status)) { - DPRINT("ConnectPortDriver() failed with status 0x%08lx\n", Status); + WARN_(CLASS_NAME, "ConnectPortDriver() failed with status 0x%08lx\n", Status); goto cleanup; } Fdo->Flags &= ~DO_DEVICE_INITIALIZING; @@ -725,7 +725,7 @@ KIRQL OldIrql; BOOLEAN wasQueued = FALSE;
- DPRINT("ClassCancelRoutine(DeviceObject %p, Irp %p)\n", DeviceObject, Irp); + TRACE_(CLASS_NAME, "ClassCancelRoutine(DeviceObject %p, Irp %p)\n", DeviceObject, Irp);
ASSERT(ClassDeviceExtension->Common.IsClassDO);
@@ -762,7 +762,7 @@ PCLASS_DEVICE_EXTENSION DeviceExtension = DeviceObject->DeviceExtension; NTSTATUS Status;
- DPRINT("HandleReadIrp(DeviceObject %p, Irp %p)\n", DeviceObject, Irp); + TRACE_(CLASS_NAME, "HandleReadIrp(DeviceObject %p, Irp %p)\n", DeviceObject, Irp);
ASSERT(DeviceExtension->Common.IsClassDO);
@@ -828,7 +828,7 @@ PCLASS_DEVICE_EXTENSION DeviceExtension = DeviceObject->DeviceExtension; KIRQL OldIrql;
- DPRINT("ClassStartIo(DeviceObject %p, Irp %p)\n", DeviceObject, Irp); + TRACE_(CLASS_NAME, "ClassStartIo(DeviceObject %p, Irp %p)\n", DeviceObject, Irp);
ASSERT(DeviceExtension->Common.IsClassDO);
@@ -854,7 +854,7 @@ ULONG Size, ResultLength; NTSTATUS Status;
- DPRINT("SearchForLegacyDrivers(%p %p %lu)\n", + TRACE_(CLASS_NAME, "SearchForLegacyDrivers(%p %p %lu)\n", DriverObject, Context, Count);
if (Count != 1) @@ -868,7 +868,7 @@ &PortBaseName); if (!NT_SUCCESS(Status)) { - DPRINT("DuplicateUnicodeString() failed with status 0x%08lx\n", Status); + WARN_(CLASS_NAME, "DuplicateUnicodeString() failed with status 0x%08lx\n", Status); goto cleanup; } PortBaseName.Length -= (sizeof(L"Class") - sizeof(UNICODE_NULL)); @@ -879,7 +879,7 @@ KeyValueInformation = ExAllocatePoolWithTag(PagedPool, Size, CLASS_TAG); if (!KeyValueInformation) { - DPRINT("ExAllocatePoolWithTag() failed\n"); + WARN_(CLASS_NAME, "ExAllocatePoolWithTag() failed\n"); Status = STATUS_NO_MEMORY; goto cleanup; } @@ -889,13 +889,13 @@ Status = ZwOpenKey(&hDeviceMapKey, 0, &ObjectAttributes); if (Status == STATUS_OBJECT_NAME_NOT_FOUND) { - DPRINT("HKLM\HARDWARE\DEVICEMAP is non-existent\n"); + INFO_(CLASS_NAME, "HKLM\HARDWARE\DEVICEMAP is non-existent\n"); Status = STATUS_SUCCESS; goto cleanup; } else if (!NT_SUCCESS(Status)) { - DPRINT("ZwOpenKey() failed with status 0x%08lx\n", Status); + WARN_(CLASS_NAME, "ZwOpenKey() failed with status 0x%08lx\n", Status); goto cleanup; }
@@ -904,13 +904,13 @@ Status = ZwOpenKey(&hPortKey, KEY_QUERY_VALUE, &ObjectAttributes); if (Status == STATUS_OBJECT_NAME_NOT_FOUND) { - DPRINT("HKLM\HARDWARE\DEVICEMAP\%wZ is non-existent\n", &PortBaseName); + INFO_(CLASS_NAME, "HKLM\HARDWARE\DEVICEMAP\%wZ is non-existent\n", &PortBaseName); Status = STATUS_SUCCESS; goto cleanup; } else if (!NT_SUCCESS(Status)) { - DPRINT("ZwOpenKey() failed with status 0x%08lx\n", Status); + WARN_(CLASS_NAME, "ZwOpenKey() failed with status 0x%08lx\n", Status); goto cleanup; }
@@ -928,16 +928,16 @@ Status = IoGetDeviceObjectPointer(&PortName, FILE_READ_ATTRIBUTES, &FileObject, &PortDeviceObject); if (!NT_SUCCESS(Status)) { - DPRINT("IoGetDeviceObjectPointer(%wZ) failed with status 0x%08lx\n", &PortName, Status); + WARN_(CLASS_NAME, "IoGetDeviceObjectPointer(%wZ) failed with status 0x%08lx\n", &PortName, Status); continue; } - DPRINT("Legacy driver found\n"); + INFO_(CLASS_NAME, "Legacy driver found\n");
Status = ClassAddDevice(DriverObject, PortDeviceObject); if (!NT_SUCCESS(Status)) { /* FIXME: Log the error */ - DPRINT("ClassAddDevice() failed with status 0x%08lx\n", Status); + WARN_(CLASS_NAME, "ClassAddDevice() failed with status 0x%08lx\n", Status); }
/* A special hack for 1st stage setup: manually send start device to i8042prt */ @@ -973,7 +973,7 @@ (PVOID*)&DriverExtension); if (!NT_SUCCESS(Status)) { - DPRINT("IoAllocateDriverObjectExtension() failed with status 0x%08lx\n", Status); + WARN_(CLASS_NAME, "IoAllocateDriverObjectExtension() failed with status 0x%08lx\n", Status); return Status; } RtlZeroMemory(DriverExtension, sizeof(CLASS_DRIVER_EXTENSION)); @@ -984,14 +984,14 @@ &DriverExtension->RegistryPath); if (!NT_SUCCESS(Status)) { - DPRINT("DuplicateUnicodeString() failed with status 0x%08lx\n", Status); + WARN_(CLASS_NAME, "DuplicateUnicodeString() failed with status 0x%08lx\n", Status); return Status; }
Status = ReadRegistryEntries(RegistryPath, DriverExtension); if (!NT_SUCCESS(Status)) { - DPRINT("ReadRegistryEntries() failed with status 0x%08lx\n", Status); + WARN_(CLASS_NAME, "ReadRegistryEntries() failed with status 0x%08lx\n", Status); return Status; }
@@ -1002,7 +1002,7 @@ &DriverExtension->MainClassDeviceObject); if (!NT_SUCCESS(Status)) { - DPRINT("CreateClassDeviceObject() failed with status 0x%08lx\n", Status); + WARN_(CLASS_NAME, "CreateClassDeviceObject() failed with status 0x%08lx\n", Status); return Status; } }
Modified: branches/pierre-fsd/drivers/input/kbdclass/kbdclass.h URL: http://svn.reactos.org/svn/reactos/branches/pierre-fsd/drivers/input/kbdclas... ============================================================================== --- branches/pierre-fsd/drivers/input/kbdclass/kbdclass.h [iso-8859-1] (original) +++ branches/pierre-fsd/drivers/input/kbdclass/kbdclass.h [iso-8859-1] Wed Aug 12 10:57:21 2009 @@ -4,7 +4,6 @@ #include <stdio.h> #include <pseh/pseh2.h>
-#define NDEBUG #include <debug.h>
#define MAX_PATH 260 @@ -13,6 +12,7 @@
#define TAG(A, B, C, D) (ULONG)(((A)<<0) + ((B)<<8) + ((C)<<16) + ((D)<<24)) #define CLASS_TAG TAG('K', 'b', 'd', 'C') +#define DPFLTR_CLASS_NAME_ID DPFLTR_KBDCLASS_ID
typedef enum {
Modified: branches/pierre-fsd/drivers/input/kbdclass/misc.c URL: http://svn.reactos.org/svn/reactos/branches/pierre-fsd/drivers/input/kbdclas... ============================================================================== --- branches/pierre-fsd/drivers/input/kbdclass/misc.c [iso-8859-1] (original) +++ branches/pierre-fsd/drivers/input/kbdclass/misc.c [iso-8859-1] Wed Aug 12 10:57:21 2009 @@ -37,7 +37,7 @@ KeInitializeEvent(&Event, NotificationEvent, FALSE); IoCopyCurrentIrpStackLocationToNext(Irp);
- DPRINT("Calling lower device %p\n", LowerDevice); + TRACE_(CLASS_NAME, "Calling lower device %p\n", LowerDevice); IoSetCompletionRoutine(Irp, ForwardIrpAndWaitCompletion, &Event, TRUE, TRUE, TRUE);
Status = IoCallDriver(LowerDevice, Irp);
Modified: branches/pierre-fsd/include/reactos/win32k/ntgdityp.h URL: http://svn.reactos.org/svn/reactos/branches/pierre-fsd/include/reactos/win32... ============================================================================== --- branches/pierre-fsd/include/reactos/win32k/ntgdityp.h [iso-8859-1] (original) +++ branches/pierre-fsd/include/reactos/win32k/ntgdityp.h [iso-8859-1] Wed Aug 12 10:57:21 2009 @@ -229,8 +229,8 @@
typedef struct _UNIVERSAL_FONT_ID { - ULONG CheckSum; - ULONG Index; + ULONG CheckSum; + ULONG Index; } UNIVERSAL_FONT_ID, *PUNIVERSAL_FONT_ID;
#define RI_TECH_BITMAP 1 @@ -602,7 +602,13 @@ typedef VOID (NTAPI *PGD_SYNCHRONIZESURFACE)(SURFOBJ*, RECTL *, FLONG);
// -// Most of these are definded in ddk/winddi.h +// Declarations missing in ddk/winddi.h +// +typedef VOID (APIENTRY *PFN_DrvMovePanning)(LONG, LONG, FLONG); + + +// +// Most of these are defined in ddk/winddi.h // typedef struct _DRIVER_FUNCTIONS {