aboutsummaryrefslogtreecommitdiff
path: root/src/libstore
diff options
context:
space:
mode:
Diffstat (limited to 'src/libstore')
-rw-r--r--src/libstore/gc.cc8
1 files changed, 2 insertions, 6 deletions
diff --git a/src/libstore/gc.cc b/src/libstore/gc.cc
index 481f5a7c3..e9db711e7 100644
--- a/src/libstore/gc.cc
+++ b/src/libstore/gc.cc
@@ -301,12 +301,8 @@ static void findRoots(StoreAPI & store, const Path & path, unsigned char type, R
{
try {
- if (type == DT_UNKNOWN) {
- struct stat st = lstat(path);
- if (S_ISDIR(st.st_mode)) type = DT_DIR;
- else if (S_ISLNK(st.st_mode)) type = DT_LNK;
- else if (S_ISREG(st.st_mode)) type = DT_REG;
- }
+ if (type == DT_UNKNOWN)
+ type = getFileType(path);
if (type == DT_DIR) {
for (auto & i : readDirectory(path))