mirror of
https://github.com/reactos/reactos.git
synced 2025-07-04 22:01:21 +00:00
[CSRSRV]: Fix scenario when a new thread is being created from within CSRSRV and it could not register itself due to the new server-to-server support. Fixes CTRL-C and using the "X" button in a console window to close it, which had regressed since the server-to-server commit.
svn path=/trunk/; revision=55700
This commit is contained in:
parent
7d4a765fe0
commit
59ac9cae89
2 changed files with 2 additions and 1 deletions
|
@ -1227,7 +1227,7 @@ CsrCallServerFromServer(PCSR_API_MESSAGE ReceiveMsg,
|
||||||
_SEH2_TRY
|
_SEH2_TRY
|
||||||
{
|
{
|
||||||
/* Call the API and get the result */
|
/* Call the API and get the result */
|
||||||
Status = (ServerDll->DispatchTable[ApiId])(ReceiveMsg, &Reply);
|
Status = ServerDll->DispatchTable[ApiId](ReceiveMsg, &Reply);
|
||||||
|
|
||||||
/* Return the result, no matter what it is */
|
/* Return the result, no matter what it is */
|
||||||
ReplyMsg->Status = Status;
|
ReplyMsg->Status = Status;
|
||||||
|
|
|
@ -173,6 +173,7 @@ CSR_API(CsrSrvCreateThread)
|
||||||
PCSR_PROCESS CsrProcess;
|
PCSR_PROCESS CsrProcess;
|
||||||
|
|
||||||
CurrentThread = NtCurrentTeb()->CsrClientThread;
|
CurrentThread = NtCurrentTeb()->CsrClientThread;
|
||||||
|
if (!CurrentThread) return STATUS_SUCCESS; // server-to-server
|
||||||
CsrProcess = CurrentThread->Process;
|
CsrProcess = CurrentThread->Process;
|
||||||
|
|
||||||
if (CsrProcess->ClientId.UniqueProcess != Request->Data.CreateThreadRequest.ClientId.UniqueProcess)
|
if (CsrProcess->ClientId.UniqueProcess != Request->Data.CreateThreadRequest.ClientId.UniqueProcess)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue