Author: aandrejevic
Date: Fri May  2 21:45:16 2014
New Revision: 63120

URL: http://svn.reactos.org/svn/reactos?rev=63120&view=rev
Log:
[BASESRV]
In BaseSrvGetConsoleRecord and GetConsoleRecordBySessionId, check if the 
console record was not found instead
of returning the last one in the list.
In BaseSrvCheckVDM, return the session ID to the caller.


Modified:
    branches/ntvdm/subsystems/win/basesrv/vdm.c

Modified: branches/ntvdm/subsystems/win/basesrv/vdm.c
URL: 
http://svn.reactos.org/svn/reactos/branches/ntvdm/subsystems/win/basesrv/vdm.c?rev=63120&r1=63119&r2=63120&view=diff
==============================================================================
--- branches/ntvdm/subsystems/win/basesrv/vdm.c [iso-8859-1] (original)
+++ branches/ntvdm/subsystems/win/basesrv/vdm.c [iso-8859-1] Fri May  2 
21:45:16 2014
@@ -36,6 +36,9 @@
         if (CurrentRecord->ConsoleHandle == ConsoleHandle) break;
     }
 
+    /* Check if nothing was found */
+    if (i == &VDMConsoleListHead) CurrentRecord = NULL;
+
     *Record = CurrentRecord;
     return CurrentRecord ? STATUS_SUCCESS : STATUS_NOT_FOUND;
 }
@@ -51,6 +54,9 @@
         CurrentRecord = CONTAINING_RECORD(i, VDM_CONSOLE_RECORD, Entry);
         if (CurrentRecord->SessionId == TaskId) break;
     }
+
+    /* Check if nothing was found */
+    if (i == &VDMConsoleListHead) CurrentRecord = NULL;
 
     *Record = CurrentRecord;
     return CurrentRecord ? STATUS_SUCCESS : STATUS_NOT_FOUND;
@@ -656,6 +662,7 @@
             InsertTailList(&VDMConsoleListHead, &ConsoleRecord->Entry);
         }
 
+        CheckVdmRequest->iTask = ConsoleRecord->SessionId;
         CheckVdmRequest->VDMState = NewConsoleRecord ? VDM_NOT_LOADED : 
VDM_READY;
         Status = STATUS_SUCCESS;
     }


Reply via email to