From 57b5d08a65387e2b4c3c640ea9996d6dfe310d56 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?G=C3=A9=20van=20Geldorp?= Date: Thu, 8 Sep 2005 15:51:44 +0000 Subject: [PATCH] Unlock console on alternate return paths. Fixes bug 734. svn path=/trunk/; revision=17742 --- reactos/subsys/csrss/win32csr/conio.c | 8 ++++++++ 1 file changed, 8 insertions(+) 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; } }