summaryrefslogtreecommitdiff
path: root/Utility/Kqueue.hs
diff options
context:
space:
mode:
authorGravatar Joey Hess <joey@kitenet.net>2012-09-28 17:31:54 -0400
committerGravatar Joey Hess <joey@kitenet.net>2012-09-28 17:31:54 -0400
commita6989fd5f518939b781d7fffda50840289954e59 (patch)
treec9644adef23e25c4344f5f8c0a958a7d6fefede6 /Utility/Kqueue.hs
parentdb4db3055cfb0a58abee4ac517a8628cf108a277 (diff)
kqueue bugfix: apply pruner to changed files
It already applied the pruner when traversing directories, so .git is excluded, but .gitignore was not. Now it is.
Diffstat (limited to 'Utility/Kqueue.hs')
-rw-r--r--Utility/Kqueue.hs3
1 files changed, 2 insertions, 1 deletions
diff --git a/Utility/Kqueue.hs b/Utility/Kqueue.hs
index f44893195..4b72961b2 100644
--- a/Utility/Kqueue.hs
+++ b/Utility/Kqueue.hs
@@ -198,7 +198,8 @@ handleChange kq@(Kqueue _ _ dirmap pruner) fd olddirinfo =
go =<< catchMaybeIO (getDirInfo $ dirName olddirinfo)
where
go (Just newdirinfo) = do
- let changes = olddirinfo // newdirinfo
+ let changes = filter (not . pruner . changedFile) $
+ olddirinfo // newdirinfo
let (added, deleted) = partition isAdd changes
-- Scan newly added directories to add to the map.