summaryrefslogtreecommitdiff
path: root/Utility/DirWatcher
diff options
context:
space:
mode:
authorGravatar Joey Hess <joey@kitenet.net>2013-12-18 15:05:29 -0400
committerGravatar Joey Hess <joey@kitenet.net>2013-12-18 15:05:29 -0400
commit9a5f9fddc68475218ddb76027e00497f9a612984 (patch)
tree75153bcdec750cbfc8d8377ad3145f086d68c7a3 /Utility/DirWatcher
parent76a26745c2b022b4eee06a982958e71b27568959 (diff)
assistant: Fix OSX-specific bug that caused the startup scan to try to follow symlinks to other directories, and add their contents to the annex.
Diffstat (limited to 'Utility/DirWatcher')
-rw-r--r--Utility/DirWatcher/FSEvents.hs4
-rw-r--r--Utility/DirWatcher/Win32Notify.hs2
2 files changed, 4 insertions, 2 deletions
diff --git a/Utility/DirWatcher/FSEvents.hs b/Utility/DirWatcher/FSEvents.hs
index 18c73ec57..db6ac0434 100644
--- a/Utility/DirWatcher/FSEvents.hs
+++ b/Utility/DirWatcher/FSEvents.hs
@@ -67,7 +67,9 @@ watchDir dir ignored hooks = do
| otherwise = noop
scan d = unless (ignoredPath ignored d) $
- mapM_ go =<< dirContentsRecursive d
+ -- Do not follow symlinks when scanning.
+ -- This mirrors the inotify startup scan behavior.
+ mapM_ go =<< dirContentsRecursiveSkipping (const False) False d
where
go f
| ignoredPath ignored f = noop
diff --git a/Utility/DirWatcher/Win32Notify.hs b/Utility/DirWatcher/Win32Notify.hs
index 74b36b4f1..27175e1c8 100644
--- a/Utility/DirWatcher/Win32Notify.hs
+++ b/Utility/DirWatcher/Win32Notify.hs
@@ -42,7 +42,7 @@ watchDir dir ignored hooks = do
runhook h s = maybe noop (\a -> a (filePath evt) s) (h hooks)
scan d = unless (ignoredPath ignored d) $
- mapM_ go =<< dirContentsRecursive d
+ mapM_ go =<< dirContentsRecursiveSkipping (const False) False d
where
go f
| ignoredPath ignored f = noop