Author: turner Date: Thu Jun 8 17:07:05 2006 New Revision: 22283
URL: http://svn.reactos.ru/svn/reactos?rev=22283&view=rev Log: If treat a backspace more like a normal char.
Modified: trunk/reactos/subsystems/win32/csrss/win32csr/conio.c
Modified: trunk/reactos/subsystems/win32/csrss/win32csr/conio.c URL: http://svn.reactos.ru/svn/reactos/trunk/reactos/subsystems/win32/csrss/win32... ============================================================================== --- trunk/reactos/subsystems/win32/csrss/win32csr/conio.c (original) +++ trunk/reactos/subsystems/win32/csrss/win32csr/conio.c Thu Jun 8 17:07:05 2006 @@ -613,13 +613,14 @@ i -= 2; /* if we already have something to return, just back it up by 2 */ } else - { /* otherwise, return STATUS_NOTIFY_CLEANUP to tell client to back up its buffer */ + { + /* otherwise, we will treat the backspace just like any other char and let the client decide what to do */ Console->WaitingChars--; ConioUnlockConsole(Console); HeapFree(Win32CsrApiHeap, 0, Input); - Request->Data.ReadConsoleRequest.NrCharactersRead = 0; - Request->Status = STATUS_NOTIFY_CLEANUP; - return STATUS_NOTIFY_CLEANUP; + Request->Data.ReadConsoleRequest.NrCharactersRead++; + Buffer[i] = Input->InputEvent.Event.KeyEvent.uChar.AsciiChar; + return Request->Status; } Request->Data.ReadConsoleRequest.nCharsCanBeDeleted--; Input->Echoed = TRUE; /* mark as echoed so we don't echo it below */