FSEvents:kFSEventStreamCreateFlagWatchRoot标志:未获取“根目录重命名”事件

时间:2019-01-01 11:51:47

标签: objective-c fsevents

我正在创建FSEvents流并传递kFSEventStreamCreateFlagWatchRoot标志。来自苹果公司的documentation

  

kFSEventStreamCreateFlagWatchRoot :   请求沿您正在观看的路径的路径变化的通知。例如,使用此标志,如果您观看“ / foo / bar”并将其重命名为“ /foo/bar.old”,则会收到RootChanged事件。如果目录“ / foo”被重命名,情况也是如此。您收到的事件是一个特殊事件:事件的路径是您指定的原始路径,设置了标志kFSEventStreamEventFlagRootChanged且事件ID为零。

因此,当“ / foo / bar”重命名为“ /foo/bar.old”时,我得到了预期的事件。但是,当“ / foo”目录被重命名时,我没有得到应有的事件。可能是什么原因?

1 个答案:

答案 0 :(得分:0)

This is a known "FSEvents" bug in OS X: http://www.openradar.me/8342264