diff --git a/reactos/subsystems/win/basesrv/init.c b/reactos/subsystems/win/basesrv/init.c index 3cdf94d7be3..8895e147a73 100644 --- a/reactos/subsystems/win/basesrv/init.c +++ b/reactos/subsystems/win/basesrv/init.c @@ -599,8 +599,8 @@ VOID NTAPI BaseClientDisconnectRoutine(IN PCSR_PROCESS CsrProcess) { - /* Cleanup the VDM console records */ - BaseSrvCleanupVdmRecords(HandleToUlong(CsrProcess->ClientId.UniqueProcess)); + /* Cleanup VDM resources */ + BaseSrvCleanupVDMResources(CsrProcess); } CSR_SERVER_DLL_INIT(ServerDllInitialization) diff --git a/reactos/subsystems/win/basesrv/vdm.c b/reactos/subsystems/win/basesrv/vdm.c index 5130011b2d7..e1df0c05515 100644 --- a/reactos/subsystems/win/basesrv/vdm.c +++ b/reactos/subsystems/win/basesrv/vdm.c @@ -228,11 +228,14 @@ VOID NTAPI BaseSrvFreeVDMInfo(PVDM_COMMAND_INFO CommandInfo) RtlFreeHeap(BaseSrvHeap, 0, CommandInfo); } -VOID NTAPI BaseSrvCleanupVdmRecords(ULONG ProcessId) +VOID +NTAPI +BaseSrvCleanupVDMResources(IN PCSR_PROCESS CsrProcess) { - PLIST_ENTRY i; + ULONG ProcessId = HandleToUlong(CsrProcess->ClientId.UniqueProcess); PVDM_CONSOLE_RECORD ConsoleRecord = NULL; PVDM_DOS_RECORD DosRecord; + PLIST_ENTRY i; /* Enter the critical section */ RtlEnterCriticalSection(&DosCriticalSection); diff --git a/reactos/subsystems/win/basesrv/vdm.h b/reactos/subsystems/win/basesrv/vdm.h index 3da59d90442..db11e65bce9 100644 --- a/reactos/subsystems/win/basesrv/vdm.h +++ b/reactos/subsystems/win/basesrv/vdm.h @@ -49,7 +49,7 @@ ULONG NTAPI GetNextDosSesId(VOID); BOOLEAN NTAPI BaseSrvIsVdmAllowed(VOID); NTSTATUS NTAPI BaseSrvCreatePairWaitHandles(PHANDLE ServerEvent, PHANDLE ClientEvent); VOID NTAPI BaseSrvFreeVDMInfo(PVDM_COMMAND_INFO CommandInfo); -VOID NTAPI BaseSrvCleanupVdmRecords(ULONG ProcessId); +VOID NTAPI BaseSrvCleanupVDMResources(IN PCSR_PROCESS CsrProcess); BOOLEAN NTAPI BaseSrvCopyCommand(PBASE_CHECK_VDM CheckVdmRequest, PVDM_DOS_RECORD DosRecord); NTSTATUS NTAPI BaseSrvFillCommandInfo( PVDM_COMMAND_INFO CommandInfo,