- minor cleanup
This commit is contained in:
parent
9cc69508ad
commit
4da6c88f02
|
|
@ -101,13 +101,16 @@ int iosVersion()
|
||||||
#include <sys/select.h>
|
#include <sys/select.h>
|
||||||
#include <termios.h>
|
#include <termios.h>
|
||||||
#include <sys/ioctl.h>
|
#include <sys/ioctl.h>
|
||||||
|
#include <fcntl.h>
|
||||||
|
|
||||||
int _kbhit()
|
int _kbhit()
|
||||||
{
|
{
|
||||||
|
/*
|
||||||
static const int STDIN = 0;
|
static const int STDIN = 0;
|
||||||
static bool initialized = false;
|
static bool initialized = false;
|
||||||
|
|
||||||
if (! initialized) {
|
if (! initialized)
|
||||||
|
{
|
||||||
// Use termios to turn off line buffering
|
// Use termios to turn off line buffering
|
||||||
termios term;
|
termios term;
|
||||||
tcgetattr(STDIN, &term);
|
tcgetattr(STDIN, &term);
|
||||||
|
|
@ -119,7 +122,31 @@ int _kbhit()
|
||||||
|
|
||||||
int bytesWaiting;
|
int bytesWaiting;
|
||||||
ioctl(STDIN, FIONREAD, &bytesWaiting);
|
ioctl(STDIN, FIONREAD, &bytesWaiting);
|
||||||
return bytesWaiting;
|
return bytesWaiting;*/
|
||||||
|
static const int STDIN_FILENO = 0;
|
||||||
|
struct termios oldt, newt;
|
||||||
|
int ch;
|
||||||
|
int oldf;
|
||||||
|
|
||||||
|
tcgetattr(STDIN_FILENO, &oldt);
|
||||||
|
newt = oldt;
|
||||||
|
newt.c_lflag &= ~(ICANON | ECHO);
|
||||||
|
tcsetattr(STDIN_FILENO, TCSANOW, &newt);
|
||||||
|
oldf = fcntl(STDIN_FILENO, F_GETFL, 0);
|
||||||
|
fcntl(STDIN_FILENO, F_SETFL, oldf | O_NONBLOCK);
|
||||||
|
|
||||||
|
ch = getchar();
|
||||||
|
|
||||||
|
tcsetattr(STDIN_FILENO, TCSANOW, &oldt);
|
||||||
|
fcntl(STDIN_FILENO, F_SETFL, oldf);
|
||||||
|
|
||||||
|
if(ch != EOF)
|
||||||
|
{
|
||||||
|
ungetc(ch, stdin);
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue