michaelh added inline comments. INLINE COMMENTS
> bruns wrote in fileindexscheduler.cpp:148 > You can put the lambda into the `remove_if` invocation: > > auto tail = std::remove_if(list.begin(), list.end(), > [&dir](const QString& file) { > return file.startsWith(dir); > }); I suppose developers on my level will appreciate code to be most self-explanatory. I'm not objecting though, we might al well go "all the way": list.erase(std::remove_if(list.begin(), list.end(), [&dir](const QString& file) { return file.startsWith(dir); }), list.end()); > bruns wrote in pendingfilequeue.cpp:66 > You are missing the `m_pendingFiles.remove(...)` and > `m_recentlyEmitted.remove(...)` calls here. > > Variant A: > You can use `std::partition` instead of `std::remove_if` here (which keeps > the elements between tail and .end() intact), and iterate over the tail to > remove the elements from m_pendingFiles and m_recentlyEmitted. Last, do the > erase(tail, m_cache.end()). > > Variant B: > Use `std::remove_if`, but call `m_pendingFiles.remove()` (dito > m_recentlyEmitted) inside the lambda. > > Variant A is definitely the much cleaner approach. Ooops. REPOSITORY R293 Baloo REVISION DETAIL https://phabricator.kde.org/D12233 To: michaelh, #baloo Cc: bruns, #frameworks, ashaposhnikov, michaelh, astippich, spoorun, ngraham