mirror of
https://github.com/fergalmoran/ladybird.git
synced 2025-12-25 19:04:58 +00:00
LibCore: Remove deleted monitored files before invoking change callbacks
The caller may want to re-add the monitored file. It won't be able to do so if we internally believe the file is still being monitored.
This commit is contained in:
committed by
Andreas Kling
parent
abc462999e
commit
574b4be433
@@ -111,7 +111,6 @@ FileWatcher::FileWatcher(int watcher_fd, NonnullRefPtr<Notifier> notifier)
|
|||||||
auto maybe_event = get_event_from_fd(m_notifier->fd(), m_wd_to_path);
|
auto maybe_event = get_event_from_fd(m_notifier->fd(), m_wd_to_path);
|
||||||
if (maybe_event.has_value()) {
|
if (maybe_event.has_value()) {
|
||||||
auto event = maybe_event.value();
|
auto event = maybe_event.value();
|
||||||
on_change(event);
|
|
||||||
|
|
||||||
if (has_flag(event.type, FileWatcherEvent::Type::Deleted)) {
|
if (has_flag(event.type, FileWatcherEvent::Type::Deleted)) {
|
||||||
auto result = remove_watch(event.event_path);
|
auto result = remove_watch(event.event_path);
|
||||||
@@ -119,6 +118,8 @@ FileWatcher::FileWatcher(int watcher_fd, NonnullRefPtr<Notifier> notifier)
|
|||||||
dbgln_if(FILE_WATCHER_DEBUG, "on_ready_to_read: {}", result.error());
|
dbgln_if(FILE_WATCHER_DEBUG, "on_ready_to_read: {}", result.error());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
on_change(event);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user