civodul pushed a commit to branch nix
in repository guix.
commit ee8601cac4b353e551b238f546a0e7e8fcdcd3be
Author: Eelco Dolstra <[email protected]>
Date: Tue Oct 14 10:51:19 2014 +0200
Improved error message when encountering unsupported file types
Fixes #269.
---
nix/libstore/local-store.cc | 6 +++---
1 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/nix/libstore/local-store.cc b/nix/libstore/local-store.cc
index ab5b601..2f5c0e1 100644
--- a/nix/libstore/local-store.cc
+++ b/nix/libstore/local-store.cc
@@ -551,9 +551,9 @@ static void canonicalisePathMetaData_(const Path & path,
uid_t fromUid, InodesSe
if (lstat(path.c_str(), &st))
throw SysError(format("getting attributes of path `%1%'") % path);
- /* Really make sure that the path is of a supported type. This
- has already been checked in dumpPath(). */
- assert(S_ISREG(st.st_mode) || S_ISDIR(st.st_mode) || S_ISLNK(st.st_mode));
+ /* Really make sure that the path is of a supported type. */
+ if (!(S_ISREG(st.st_mode) || S_ISDIR(st.st_mode) || S_ISLNK(st.st_mode)))
+ throw Error(format("file ‘%1%’ has an unsupported type") % path);
/* Fail if the file is not owned by the build user. This prevents
us from messing up the ownership/permissions of files