ReactOS now boots. More bug fixes needed
Modified: trunk/reactos/ntoskrnl/include/internal/ob.h
Modified: trunk/reactos/ntoskrnl/ps/process.c
Modified: trunk/reactos/ntoskrnl/se/token.c
Modified: trunk/reactos/subsys/system/userinit/userinit.c

Modified: trunk/reactos/ntoskrnl/include/internal/ob.h
--- trunk/reactos/ntoskrnl/include/internal/ob.h	2005-01-21 23:58:30 UTC (rev 13200)
+++ trunk/reactos/ntoskrnl/include/internal/ob.h	2005-01-22 01:00:12 UTC (rev 13201)
@@ -373,7 +373,8 @@
     else if(ClassList[Class].RequiredSize##Mode > 0 &&                         \
             (BufferLen) != ClassList[Class].RequiredSize##Mode)                \
     {                                                                          \
-      if(!(ClassList[Class].Flags & ICIF_##Mode##_SIZE_VARIABLE) ||            \
+      if((!(ClassList[Class].Flags & ICIF_##Mode##_SIZE_VARIABLE) &&           \
+           (BufferLen) != ClassList[Class].RequiredSize##Mode) ||              \
          ((ClassList[Class].Flags & ICIF_##Mode##_SIZE_VARIABLE) &&            \
           (BufferLen) < ClassList[Class].RequiredSize##Mode))                  \
       {                                                                        \
@@ -387,6 +388,7 @@
   }                                                                            \
   } while(0)
 
+
 #define GetInfoClassAlignment(Class, ClassList, AlignmentVar, Mode)            \
   do {                                                                         \
   if((Class) >= 0 && (Class) < sizeof(ClassList) / sizeof(ClassList[0]))       \

Modified: trunk/reactos/ntoskrnl/ps/process.c
--- trunk/reactos/ntoskrnl/ps/process.c	2005-01-21 23:58:30 UTC (rev 13200)
+++ trunk/reactos/ntoskrnl/ps/process.c	2005-01-22 01:00:12 UTC (rev 13201)
@@ -1695,7 +1695,8 @@
    NTSTATUS Status = STATUS_SUCCESS;
    
    PreviousMode = ExGetPreviousMode();
-   
+
+   DPRINT1("NtSetInformationProcess() %d %x  %x called\n", ProcessInformationClass, ProcessInformation, ProcessInformationLength);
    DefaultSetInfoBufferCheck(ProcessInformationClass,
                              PsProcessInfoClass,
                              ProcessInformation,
@@ -1704,7 +1705,7 @@
                              &Status);
    if(!NT_SUCCESS(Status))
    {
-     DPRINT1("NtSetInformationProcess() failed, Status: 0x%x\n", Status);
+     DPRINT1("NtSetInformationProcess() %x failed, Status: 0x%x\n", Status);
      return Status;
    }
    

Modified: trunk/reactos/ntoskrnl/se/token.c
--- trunk/reactos/ntoskrnl/se/token.c	2005-01-21 23:58:30 UTC (rev 13200)
+++ trunk/reactos/ntoskrnl/se/token.c	2005-01-22 01:00:12 UTC (rev 13201)
@@ -1564,7 +1564,7 @@
 NTSTATUS STDCALL
 NtCreateToken(OUT PHANDLE UnsafeTokenHandle,
 	      IN ACCESS_MASK DesiredAccess,
-	      IN POBJECT_ATTRIBUTES UnsafeObjectAttributes,
+	      IN POBJECT_ATTRIBUTES ObjectAttributes,
 	      IN TOKEN_TYPE TokenType,
 	      IN PLUID AuthenticationId,
 	      IN PLARGE_INTEGER ExpirationTime,
@@ -1579,7 +1579,6 @@
   HANDLE TokenHandle;
   PTOKEN AccessToken;
   NTSTATUS Status;
-  POBJECT_ATTRIBUTES ObjectAttributes;
   LUID TokenId;
   LUID ModifiedId;
   PVOID EndMem;

Modified: trunk/reactos/subsys/system/userinit/userinit.c
--- trunk/reactos/subsys/system/userinit/userinit.c	2005-01-21 23:58:30 UTC (rev 13200)
+++ trunk/reactos/subsys/system/userinit/userinit.c	2005-01-22 01:00:12 UTC (rev 13201)
@@ -143,7 +143,6 @@
 	LPSTR lpszCmdLine,
 	int nCmdShow)
 {
-  DPRINT1("Hello\n");
   SetUserSettings();
   StartShell();
   return 0;