summaryrefslogtreecommitdiffstats
path: root/common/facade.cpp
diff options
context:
space:
mode:
authorChristian Mollekopf <chrigi_1@fastmail.fm>2015-11-25 09:37:59 +0100
committerChristian Mollekopf <chrigi_1@fastmail.fm>2015-11-25 09:37:59 +0100
commita4acb7e251cba5ba6d66bf6235736202255c4eac (patch)
treeaff6b7d7d852959bb4767809d3911d18b4ae3269 /common/facade.cpp
parent00e6b843e9f2881faccb312594a0e91c42df0096 (diff)
downloadsink-a4acb7e251cba5ba6d66bf6235736202255c4eac.tar.gz
sink-a4acb7e251cba5ba6d66bf6235736202255c4eac.zip
Only use the parent index when it's available
Diffstat (limited to 'common/facade.cpp')
-rw-r--r--common/facade.cpp14
1 files changed, 8 insertions, 6 deletions
diff --git a/common/facade.cpp b/common/facade.cpp
index 850d28b..68770b5 100644
--- a/common/facade.cpp
+++ b/common/facade.cpp
@@ -350,12 +350,14 @@ template<class DomainType>
350qint64 GenericFacade<DomainType>::executeInitialQuery(const Akonadi2::Query &query, const typename DomainType::Ptr &parent, Akonadi2::ResultProviderInterface<typename DomainType::Ptr> &resultProvider) 350qint64 GenericFacade<DomainType>::executeInitialQuery(const Akonadi2::Query &query, const typename DomainType::Ptr &parent, Akonadi2::ResultProviderInterface<typename DomainType::Ptr> &resultProvider)
351{ 351{
352 auto modifiedQuery = query; 352 auto modifiedQuery = query;
353 if (parent && !query.parentProperty.isEmpty()) { 353 if (!query.parentProperty.isEmpty()) {
354 Trace() << "Running initial query for parent:" << parent->identifier(); 354 if (parent) {
355 modifiedQuery.propertyFilter.insert(query.parentProperty, parent->identifier()); 355 Trace() << "Running initial query for parent:" << parent->identifier();
356 } else { 356 modifiedQuery.propertyFilter.insert(query.parentProperty, parent->identifier());
357 Trace() << "Running initial query for toplevel"; 357 } else {
358 modifiedQuery.propertyFilter.insert(query.parentProperty, QVariant()); 358 Trace() << "Running initial query for toplevel";
359 modifiedQuery.propertyFilter.insert(query.parentProperty, QVariant());
360 }
359 } 361 }
360 return load(modifiedQuery, [&](Akonadi2::Storage::Transaction &transaction, QSet<QByteArray> &remainingFilters) -> ResultSet { 362 return load(modifiedQuery, [&](Akonadi2::Storage::Transaction &transaction, QSet<QByteArray> &remainingFilters) -> ResultSet {
361 return loadInitialResultSet(modifiedQuery, transaction, remainingFilters); 363 return loadInitialResultSet(modifiedQuery, transaction, remainingFilters);