From e8ec4b5d1202d935bcc6ed75c361b618e8da627f Mon Sep 17 00:00:00 2001 From: Ricardo Branco Date: Fri, 5 Jan 2024 20:42:00 +0100 Subject: less: Do not trust st_size if it equals zero --- ch.c | 13 ++----------- 1 file changed, 2 insertions(+), 11 deletions(-) diff --git a/ch.c b/ch.c index fd53b2d66e38..51045438a296 100644 --- a/ch.c +++ b/ch.c @@ -700,7 +700,6 @@ public void ch_flush(void) ch_block = 0; /* ch_fpos / LBUFSIZE; */ ch_offset = 0; /* ch_fpos % LBUFSIZE; */ -#if HAVE_PROCFS /* * This is a kludge to workaround a Linux kernel bug: files in * /proc have a size of 0 according to fstat() but have readable @@ -709,17 +708,9 @@ public void ch_flush(void) */ if (ch_fsize == 0) { - struct statfs st; - if (fstatfs(ch_file, &st) == 0) - { - if (st.f_type == PROC_SUPER_MAGIC) - { - ch_fsize = NULL_POSITION; - ch_flags &= ~CH_CANSEEK; - } - } + ch_fsize = NULL_POSITION; + ch_flags &= ~CH_CANSEEK; } -#endif if (lseek(ch_file, (off_t)0, SEEK_SET) == BAD_LSEEK) { -- cgit v1.2.3