From 61e16468f0c7a2186b1ef8ca3393e292ba1b1a97 Mon Sep 17 00:00:00 2001 From: Wayne Davison Date: Fri, 6 Jan 2006 22:20:07 +0000 Subject: [PATCH] We need to call clearerr() when getc() returns EOF with errno == EINTR. --- exclude.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/exclude.c b/exclude.c index 35a64b96..8d748641 100644 --- a/exclude.c +++ b/exclude.c @@ -1006,8 +1006,10 @@ void parse_filter_file(struct filter_list_struct *listp, const char *fname, int ch, overflow = 0; while (1) { if ((ch = getc(fp)) == EOF) { - if (ferror(fp) && errno == EINTR) + if (ferror(fp) && errno == EINTR) { + clearerr(fp); continue; + } break; } if (word_split && isspace(ch)) -- 2.34.1