Mercurial > sdl-ios-xcode
changeset 1778:e28233f37f8c
Fixed detection of current vt when not running as root.
author | Sam Lantinga <slouken@libsdl.org> |
---|---|
date | Mon, 08 May 2006 05:17:10 +0000 |
parents | 402d5ff1cf88 |
children | 67fc81efcfc3 |
files | src/video/fbcon/SDL_fbevents.c |
diffstat | 1 files changed, 9 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/src/video/fbcon/SDL_fbevents.c Mon May 08 04:19:03 2006 +0000 +++ b/src/video/fbcon/SDL_fbevents.c Mon May 08 05:17:10 2006 +0000 @@ -55,6 +55,7 @@ #define GPM_NODE_FIFO "/dev/gpmdata" #endif +/*#define DEBUG_KEYBOARD*/ /*#define DEBUG_MOUSE*/ /* The translation tables from a console scancode to a SDL keysym */ @@ -281,8 +282,15 @@ } if ( keyboard_fd < 0 ) { /* Last resort, maybe our tty is a usable VT */ - current_vt = 0; + struct vt_stat vtstate; + keyboard_fd = open("/dev/tty", O_RDWR); + + if ( ioctl(keyboard_fd, VT_GETSTATE, &vtstate) == 0 ) { + current_vt = vtstate.v_active; + } else { + current_vt = 0; + } } #ifdef DEBUG_KEYBOARD fprintf(stderr, "Current VT: %d\n", current_vt);