Hello I run cygwin on Windows XP through rxvt. When I compile and run the following code:
#include <stdio.h> main() { printf("isatty=%d\n",isatty(fileno(stdin))); char *s=(char *)malloc(1024+1); char *s2=(char *)malloc(1024+1); fgets(s,1024,stdin); free(s); printf("stdio = %ld\n", ftell(stdin)); fgets(s2,1024,stdin); free(s2); printf("stdio = %ld\n", ftell(stdin)); } I input "abcdefg" followed by a nl and then "abcdefg" followed by a nl. $ gcc test1.c bash ~ $ ./a isatty=1 abcdefg stdio = 0 abcdefg stdio = 8 As you see, the first ftell's result is wrong. The first fgets is ignored. Interestingly, when I run cygwin without rxvt(just running bash.exe from the dos command line) with CYGWIN=notty, the ftell always returns -1. If CYGWIN=tty, then ftell behaves as in rxvt ; it returns 0 first and then behaves correct. Am I missing something? -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/