Author: hbelusca
Date: Mon Dec 22 19:50:00 2014
New Revision: 65798
URL:
http://svn.reactos.org/svn/reactos?rev=65798&view=rev
Log:
[USERSRV]
- Reenable UserClientConnect callback, it's not the problematic code that made bots to
fail at 3rd stage and caused r65716 to be committed.
- Put the system threads hack *after* having called NtUserInitialize (that really
initializes user-kernel interface with win32k), and not before.
Modified:
trunk/reactos/win32ss/user/winsrv/usersrv/init.c
Modified: trunk/reactos/win32ss/user/winsrv/usersrv/init.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/user/winsrv/usersr…
==============================================================================
--- trunk/reactos/win32ss/user/winsrv/usersrv/init.c [iso-8859-1] (original)
+++ trunk/reactos/win32ss/user/winsrv/usersrv/init.c [iso-8859-1] Mon Dec 22 19:50:00
2014
@@ -191,12 +191,7 @@
CSR_SERVER_DLL_INIT(UserServerDllInitialization)
{
-/*** From win32csr... ***/
- HANDLE ServerThread;
- CLIENT_ID ClientId;
NTSTATUS Status;
- UINT i;
-/*** END - From win32csr... ***/
/* Initialize the memory */
UserServerHeap = RtlGetProcessHeap();
@@ -210,36 +205,12 @@
LoadedServerDll->NameTable = UserServerApiNameTable;
#endif
LoadedServerDll->SizeOfProcessData = 0;
-#if 0
LoadedServerDll->ConnectCallback = UserClientConnect;
-#else
- LoadedServerDll->ConnectCallback = NULL;
-#endif
LoadedServerDll->DisconnectCallback = NULL;
LoadedServerDll->HardErrorCallback = UserServerHardError;
LoadedServerDll->ShutdownProcessCallback = UserClientShutdown;
UserServerDllInstance = LoadedServerDll->ServerHandle;
-
-/*** From win32csr... See r54125 ***/
- /* Start the Raw Input Thread and the Desktop Thread */
- for (i = 0; i < 2; ++i)
- {
- Status = RtlCreateUserThread(NtCurrentProcess(),
- NULL, TRUE, 0, 0, 0,
- CreateSystemThreads,
- (PVOID)i, &ServerThread, &ClientId);
- if (NT_SUCCESS(Status))
- {
- NtResumeThread(ServerThread, NULL);
- NtClose(ServerThread);
- }
- else
- {
- DPRINT1("Cannot start Raw Input Thread!\n");
- }
- }
-/*** END - From win32csr... ***/
/* Create the power request event */
Status = NtCreateEvent(&ghPowerRequestEvent,
@@ -278,6 +249,32 @@
return Status;
}
+/*** From win32csr... See r54125 ***/
+ {
+ HANDLE ServerThread;
+ CLIENT_ID ClientId;
+ UINT i;
+
+ /* Start the Raw Input Thread and the Desktop Thread */
+ for (i = 0; i < 2; ++i)
+ {
+ Status = RtlCreateUserThread(NtCurrentProcess(),
+ NULL, TRUE, 0, 0, 0,
+ CreateSystemThreads,
+ (PVOID)i, &ServerThread, &ClientId);
+ if (NT_SUCCESS(Status))
+ {
+ NtResumeThread(ServerThread, NULL);
+ NtClose(ServerThread);
+ }
+ else
+ {
+ DPRINT1("Cannot start Raw Input Thread!\n");
+ }
+ }
+ }
+/*** END - From win32csr... ***/
+
/* All done */
return STATUS_SUCCESS;
}