msvcr: Add _getche_nolock implementation.

oldstable
Piotr Caban 2015-06-11 17:54:39 +02:00 committed by Alexandre Julliard
parent 0a600ccde8
commit 57754bdb29
6 changed files with 23 additions and 12 deletions

View File

@ -892,7 +892,7 @@
@ cdecl _getch()
@ cdecl _getch_nolock()
@ cdecl _getche()
@ stub _getche_nolock
@ cdecl _getche_nolock()
@ cdecl _getcwd(str long) MSVCRT__getcwd
@ cdecl _getdcwd(long str long) MSVCRT__getdcwd
@ stub _getdcwd_nolock

View File

@ -1240,7 +1240,7 @@
@ cdecl _getch()
@ cdecl _getch_nolock()
@ cdecl _getche()
@ stub _getche_nolock
@ cdecl _getche_nolock()
@ cdecl _getcwd(str long) MSVCRT__getcwd
@ cdecl _getdcwd(long str long) MSVCRT__getdcwd
@ cdecl _getdiskfree(long ptr) MSVCRT__getdiskfree

View File

@ -1238,7 +1238,7 @@
@ cdecl _getch()
@ cdecl _getch_nolock()
@ cdecl _getche()
@ stub _getche_nolock
@ cdecl _getche_nolock()
@ cdecl _getcwd(str long) MSVCRT__getcwd
@ cdecl _getdcwd(long str long) MSVCRT__getdcwd
@ cdecl _getdiskfree(long ptr) MSVCRT__getdiskfree

View File

@ -566,7 +566,7 @@
@ cdecl _getch()
@ cdecl _getch_nolock()
@ cdecl _getche()
@ stub _getche_nolock
@ cdecl _getche_nolock()
@ cdecl _getcwd(str long) MSVCRT__getcwd
@ cdecl _getdcwd(long str long) MSVCRT__getdcwd
@ stub _getdcwd_nolock

View File

@ -543,7 +543,7 @@
@ cdecl _getch()
@ cdecl _getch_nolock()
@ cdecl _getche()
@ stub _getche_nolock
@ cdecl _getche_nolock()
@ cdecl _getcwd(str long) MSVCRT__getcwd
@ cdecl _getdcwd(long str long) MSVCRT__getdcwd
@ stub _getdcwd_nolock

View File

@ -216,18 +216,29 @@ int CDECL _putch(int c)
return c;
}
/*********************************************************************
* _getche_nolock (MSVCR80.@)
*/
int CDECL _getche_nolock(void)
{
int retval;
retval = _getch_nolock();
if (retval != MSVCRT_EOF)
retval = _putch_nolock(retval);
return retval;
}
/*********************************************************************
* _getche (MSVCRT.@)
*/
int CDECL _getche(void)
{
int retval;
LOCK_CONSOLE;
retval = _getch();
if (retval != MSVCRT_EOF)
retval = _putch(retval);
UNLOCK_CONSOLE;
return retval;
int ret;
LOCK_CONSOLE;
ret = _getche_nolock();
UNLOCK_CONSOLE;
return ret;
}
/*********************************************************************