summaryrefslogtreecommitdiffstats
path: root/common/entitystorage.cpp
diff options
context:
space:
mode:
authorChristian Mollekopf <chrigi_1@fastmail.fm>2015-10-20 15:50:52 +0200
committerChristian Mollekopf <chrigi_1@fastmail.fm>2015-10-20 15:50:52 +0200
commit7a456d8a8687d7a960c0f8c4bfb18eed3754404c (patch)
treefd3e77c5ff6885fcf5a1dd7e1722197904b6ec65 /common/entitystorage.cpp
parent43c4cd555e4a265d3e484dfeea0aa05da0977cd0 (diff)
downloadsink-7a456d8a8687d7a960c0f8c4bfb18eed3754404c.tar.gz
sink-7a456d8a8687d7a960c0f8c4bfb18eed3754404c.zip
Test & fix live query removals
Diffstat (limited to 'common/entitystorage.cpp')
-rw-r--r--common/entitystorage.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/common/entitystorage.cpp b/common/entitystorage.cpp
index 63017dd..5d4df9f 100644
--- a/common/entitystorage.cpp
+++ b/common/entitystorage.cpp
@@ -27,7 +27,8 @@ ResultSet EntityStorageBase::filteredSet(const ResultSet &resultSet, const std::
27 std::function<bool(std::function<void(const Akonadi2::ApplicationDomain::ApplicationDomainType::Ptr &, Akonadi2::Operation)>)> generator = [this, resultSetPtr, &transaction, filter, initialQuery](std::function<void(const Akonadi2::ApplicationDomain::ApplicationDomainType::Ptr &, Akonadi2::Operation)> callback) -> bool { 27 std::function<bool(std::function<void(const Akonadi2::ApplicationDomain::ApplicationDomainType::Ptr &, Akonadi2::Operation)>)> generator = [this, resultSetPtr, &transaction, filter, initialQuery](std::function<void(const Akonadi2::ApplicationDomain::ApplicationDomainType::Ptr &, Akonadi2::Operation)> callback) -> bool {
28 while (resultSetPtr->next()) { 28 while (resultSetPtr->next()) {
29 readEntity(transaction, resultSetPtr->id(), [this, filter, callback, initialQuery](const Akonadi2::ApplicationDomain::ApplicationDomainType::Ptr &domainObject, Akonadi2::Operation operation) { 29 readEntity(transaction, resultSetPtr->id(), [this, filter, callback, initialQuery](const Akonadi2::ApplicationDomain::ApplicationDomainType::Ptr &domainObject, Akonadi2::Operation operation) {
30 if (filter(domainObject)) { 30 //Always remove removals, they probably don't match due to non-available properties
31 if (filter(domainObject) || operation == Akonadi2::Operation_Removal) {
31 if (initialQuery) { 32 if (initialQuery) {
32 //We're not interested in removals during the initial query 33 //We're not interested in removals during the initial query
33 if (operation != Akonadi2::Operation_Removal) { 34 if (operation != Akonadi2::Operation_Removal) {