From e16e49ac90f6da9e019fdf23084cbb256d14bd9c Mon Sep 17 00:00:00 2001 From: Ramiro Polla Date: Wed, 11 Jul 2007 14:04:54 +0000 Subject: [PATCH] Proper check for interactive support (termios and conio). Originally committed as revision 9597 to svn://svn.ffmpeg.org/ffmpeg/trunk --- configure | 5 +++++ ffmpeg.c | 14 +++++++------- 2 files changed, 12 insertions(+), 7 deletions(-) diff --git a/configure b/configure index fd887b4df2..b7a35811fa 100755 --- a/configure +++ b/configure @@ -651,6 +651,7 @@ HAVE_LIST=" arpa_inet_h byteswap_h cmov + conio_h dcbzl dev_bktr_ioctl_bt848_h dev_bktr_ioctl_meteor_h @@ -681,6 +682,7 @@ HAVE_LIST=" soundcard_h sys_poll_h sys_soundcard_h + termios_h threads " @@ -1510,6 +1512,9 @@ check_header byteswap.h check_func mkstemp +check_header termios.h +check_header conio.h + check_header arpa/inet.h check_func inet_aton diff --git a/ffmpeg.c b/ffmpeg.c index 2f2bc711ab..766c6068b0 100644 --- a/ffmpeg.c +++ b/ffmpeg.c @@ -34,9 +34,9 @@ #include "fifo.h" #include "avstring.h" -#ifdef __MINGW32__ +#if defined(HAVE_CONIO_H) #include -#else +#elif defined(HAVE_TERMIOS_H) #include #include #include @@ -277,7 +277,7 @@ typedef struct AVInputFile { int nb_streams; /* nb streams we are aware of */ } AVInputFile; -#ifndef __MINGW32__ +#ifdef HAVE_TERMIOS_H /* init terminal so that we can grab keys */ static struct termios oldtty; @@ -285,7 +285,7 @@ static struct termios oldtty; static void term_exit(void) { -#ifndef __MINGW32__ +#ifdef HAVE_TERMIOS_H tcsetattr (0, TCSANOW, &oldtty); #endif } @@ -301,7 +301,7 @@ sigterm_handler(int sig) static void term_init(void) { -#ifndef __MINGW32__ +#ifdef HAVE_TERMIOS_H struct termios tty; tcgetattr (0, &tty); @@ -334,10 +334,10 @@ static void term_init(void) /* read a key without blocking */ static int read_key(void) { -#ifdef __MINGW32__ +#if defined(HAVE_CONIO_H) if(kbhit()) return(getch()); -#else +#elif defined(HAVE_TERMIOS_H) int n = 1; unsigned char ch; #ifndef CONFIG_BEOS_NETSERVER