diff --git a/reactos/subsys/csrss/win32csr/conio.c b/reactos/subsys/csrss/win32csr/conio.c index 51084e1e819..ff1f042d5c3 100644 --- a/reactos/subsys/csrss/win32csr/conio.c +++ b/reactos/subsys/csrss/win32csr/conio.c @@ -1500,6 +1500,10 @@ CSR_API(CsrSetCursor) NewCursorY < 0 || NewCursorY >= Buff->MaxY) { ConioUnlockScreenBuffer(Buff); + if (NULL != Console) + { + ConioUnlockConsole(Console); + } return Request->Status = STATUS_INVALID_PARAMETER; } ConioPhysicalToLogical(Buff, Buff->CurrentX, Buff->CurrentY, &OldCursorX, &OldCursorY); @@ -1510,6 +1514,10 @@ CSR_API(CsrSetCursor) if (! ConioSetScreenInfo(Console, Buff, OldCursorX, OldCursorY)) { ConioUnlockScreenBuffer(Buff); + if (NULL != Console) + { + ConioUnlockConsole(Console); + } return Request->Status = STATUS_UNSUCCESSFUL; } }