avoid double commits with inotify when direct mode file is created

This commit is contained in:
Joey Hess 2012-12-29 14:58:13 -04:00
parent e872c3f648
commit 8cc27b8afc
2 changed files with 7 additions and 3 deletions

View file

@ -50,8 +50,13 @@ watchDir dir ignored hooks = do
)
else maybe (runhook delHook Nothing) handleadd
=<< getstatus (eventPath evt)
{- Add hooks are run when a file is modified for
- compatability with INotify, which calls the add
- hook when a file is closed, and so tends to call
- both add and modify for file modifications. -}
when (hasflag eventFlagItemModified && not (hasflag eventFlagItemIsDir)) $ do
ms <- getstatus $ eventPath evt
maybe noop handleadd ms
runhook modifyHook ms
where
hasflag f = eventFlags evt .&. f /= 0