From: Jeremy Katz Date: Wed, 27 Apr 2005 22:05:13 +0000 (+0000) Subject: - don't try to hardlink 0 byte files (#154404) X-Git-Tag: v2.34-rc1~126^2~5^2~17 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a16d7294a868f4dacb1482d49820f0226e50e949;p=thirdparty%2Futil-linux.git - don't try to hardlink 0 byte files (#154404) --- diff --git a/misc-utils/hardlink.c b/misc-utils/hardlink.c index 52cb41f422..7a6cf6f520 100644 --- a/misc-utils/hardlink.c +++ b/misc-utils/hardlink.c @@ -175,7 +175,7 @@ void rf (char *name) fprintf(stderr, "\r%*s\r", (int)strlen(name)+2, ""); return; } - if (fp) { + if (fp && st.st_size > 0) { p = mmap (NULL, st.st_size, PROT_READ, MAP_SHARED, fd, 0); nmmap++; if (p == (void *)-1) { @@ -191,7 +191,7 @@ void rf (char *name) st2.st_dev == st.st_dev) { int fd2 = open (fp2->name, O_RDONLY); if (fd2 < 0) continue; - if (fstat (fd2, &st2) || !S_ISREG (st2.st_mode)) { + if (fstat (fd2, &st2) || !S_ISREG (st2.st_mode) || st2.st_size == 0) { close (fd2); continue; }