summaryrefslogtreecommitdiff
path: root/Seek.hs
diff options
context:
space:
mode:
authorGravatar Joey Hess <joey@kitenet.net>2013-01-26 15:14:03 +1100
committerGravatar Joey Hess <joey@kitenet.net>2013-01-26 15:14:03 +1100
commitf0f97334d017eac6d1693bac90c772022fa57aa7 (patch)
treea7cd2e925c3bed80d45ec4dc090f0c13e0e9b736 /Seek.hs
parent44d7913686ccfef4e6cbd0fdc2b5611aa944ec70 (diff)
avoid bogus file not found warning on broken symlink
Not sure why this didn't happen all the time, but the fix is clearly correct and also saves one stat per file.
Diffstat (limited to 'Seek.hs')
-rw-r--r--Seek.hs2
1 files changed, 1 insertions, 1 deletions
diff --git a/Seek.hs b/Seek.hs
index 333afb6fc..cfcab430e 100644
--- a/Seek.hs
+++ b/Seek.hs
@@ -28,7 +28,7 @@ seekHelper a params = do
runSegmentPaths (\fs -> Git.Command.leaveZombie <$> a fs g) params
{- Show warnings only for files/directories that do not exist. -}
forM_ (map fst $ filter (null . snd) $ zip params ll) $ \p ->
- unlessM (liftIO $ doesFileExist p <||> doesDirectoryExist p) $
+ unlessM (isJust <$> (liftIO $ catchMaybeIO $ getSymbolicLinkStatus p)) $
fileNotFound p
return $ concat ll