--- gforth/engine/io.c 2007/07/01 19:05:00 1.28 +++ gforth/engine/io.c 2007/07/01 20:01:32 1.29 @@ -651,7 +651,7 @@ Cell getkey(FILE * stream) prep_terminal(); result = fread(&c, sizeof(c), 1, stream); - return result==0 ? EOF : c; + return result==0 ? (errno == EINTR ? 12 : EOF) : c; } #ifdef STANDALONE