diff -up sudo-1.8.3/src/ttysize.c.pipelist sudo-1.8.3/src/ttysize.c --- sudo-1.8.3/src/ttysize.c.pipelist 2011-10-21 15:01:26.000000000 +0200 +++ sudo-1.8.3/src/ttysize.c 2011-10-26 02:09:39.582790562 +0200 @@ -20,6 +20,7 @@ #include #include +#include #include #ifdef STDC_HEADERS # include @@ -48,6 +49,16 @@ void get_ttysize(int *rowp, int *colp) { char *p; + struct stat st; + + if (fstat(STDOUT_FILENO, &st) == 0) { + if (S_ISFIFO(st.st_mode)) { + *rowp = 0; + *colp = 0; + return; + } + } + #ifdef TIOCGWINSZ struct winsize wsize;