about summary refs log tree commit diff
diff options
context:
space:
mode:
authorEelco Dolstra <eelco.dolstra@logicblox.com>2012-08-07T20·22-0400
committerEelco Dolstra <eelco.dolstra@logicblox.com>2012-08-07T20·22-0400
commit325d1cfebf6c8ad391dc318f984feb3e5731aa5a (patch)
treeae62db8bf6baa62dc559185d972a41dbc14be81b
parentd025142f529731f05868f5397f5617011963c8b4 (diff)
Don't warn about maximum link count exceeded on 0-byte files
-rw-r--r--src/libstore/optimise-store.cc6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/libstore/optimise-store.cc b/src/libstore/optimise-store.cc
index 35c8dd48f2b6..137547a8aa79 100644
--- a/src/libstore/optimise-store.cc
+++ b/src/libstore/optimise-store.cc
@@ -156,7 +156,8 @@ void LocalStore::optimisePath_(OptimiseStats & stats, const Path & path)
                 /* Too many links to the same file (>= 32000 on most
                    file systems).  This is likely to happen with empty
                    files.  Just shrug and ignore. */
-                printMsg(lvlInfo, format("`%1%' has maximum number of links") % linkPath);
+                if (st.st_size)
+                    printMsg(lvlInfo, format("`%1%' has maximum number of links") % linkPath);
                 return;
             }
             if (errno == EPERM) continue;
@@ -172,7 +173,8 @@ void LocalStore::optimisePath_(OptimiseStats & stats, const Path & path)
                    rename, rather than on the original link.
                    (Probably it temporarily increases the st_nlink
                    field before decreasing it again.) */
-                printMsg(lvlInfo, format("`%1%' has maximum number of links") % linkPath);
+                if (st.st_size)
+                    printMsg(lvlInfo, format("`%1%' has maximum number of links") % linkPath);
                 return;
             }
             if (errno == EPERM) continue;