]> git.ipfire.org Git - thirdparty/coreutils.git/commitdiff
sort: don’t trust st_size on /proc files
authorPaul Eggert <eggert@cs.ucla.edu>
Sat, 6 Apr 2024 22:17:14 +0000 (15:17 -0700)
committerPaul Eggert <eggert@cs.ucla.edu>
Sat, 6 Apr 2024 22:18:28 +0000 (15:18 -0700)
Problem and fix reported by Takashi Kusumi in:
https://bugs.gnu.org/70231
* src/sort.c (sort_buffer_size): Don’t trust st_size == 0.

src/sort.c

index 2d8324ca469a80adae81a5917f60d87ea057196f..78983ff275b55f898fd76256b06ba358b452ea04 100644 (file)
@@ -1539,7 +1539,7 @@ sort_buffer_size (FILE *const *fps, size_t nfps,
           != 0)
         sort_die (_("stat failed"), files[i]);
 
-      if (S_ISREG (st.st_mode))
+      if (usable_st_size (&st) && 0 < st.st_size)
         file_size = st.st_size;
       else
         {