[SCM] libkpeople packaging branch, master, updated. 3271475de8af19805c1ed396583c7ef211de8a8a

Diane Trout diane-guest at alioth.debian.org
Tue Oct 29 06:28:59 UTC 2013


Gitweb-URL: http://git.debian.org/?p=pkg-kde/kde-extras/libkpeople.git;a=commitdiff;h=1503fcf

The following commit has been merged in the master branch:
commit 1503fcf01a253eaba7589210117b971e5217a705
Author: David Edmundson <kde at davidedmundson.co.uk>
Date:   Wed Oct 23 17:29:42 2013 +0200

    Flush out old data (such as groups) when reloading
    
    BUG: 326519
---
 src/contactitem.cpp  |    7 +++++++
 src/contactitem_p.h  |    2 ++
 src/personsmodel.cpp |    7 ++++++-
 3 files changed, 15 insertions(+), 1 deletion(-)

diff --git a/src/contactitem.cpp b/src/contactitem.cpp
index e100a31..b73493f 100644
--- a/src/contactitem.cpp
+++ b/src/contactitem.cpp
@@ -229,6 +229,13 @@ void ContactItem::loadData(PersonsModel* m)
     m->updateContact(this);
 }
 
+void ContactItem::clear()
+{
+    Q_D(ContactItem);
+
+    d->data.clear();
+}
+
 void ContactItem::finishLoadingData()
 {
     Q_D(ContactItem);
diff --git a/src/contactitem_p.h b/src/contactitem_p.h
index 9353979..8744785 100644
--- a/src/contactitem_p.h
+++ b/src/contactitem_p.h
@@ -61,6 +61,8 @@ public:
      */
     void loadData(KPeople::PersonsModel* m);
 
+    void clear();
+
     void finishLoadingData();
 
 private:
diff --git a/src/personsmodel.cpp b/src/personsmodel.cpp
index 536fa16..c2b4f71 100644
--- a/src/personsmodel.cpp
+++ b/src/personsmodel.cpp
@@ -356,17 +356,22 @@ void PersonsModel::updateContact(const QUrl &uri)
 
     kDebug() << "Updating contact" << uri;
 
-    if (!d->contacts.contains(uri)) {
+    ContactItem *contact = d->contacts[uri];
+
+    if (!contact) {
         kWarning() << "Contact not found! Uri is" << uri;
         return;
     }
 
+    contact->clear();
+
     QString queryString = d->prepareQuery(uri);
 
     Soprano::Model *m = Nepomuk2::ResourceManager::instance()->mainModel();
     Soprano::Util::AsyncQuery *query = Soprano::Util::AsyncQuery::executeQuery(m, queryString, Soprano::Query::QueryLanguageSparql);
     query->setProperty("contactUri", QVariant(uri));
 
+
     connect(query, SIGNAL(nextReady(Soprano::Util::AsyncQuery*)),
             this, SLOT(nextReady(Soprano::Util::AsyncQuery*)));
 

-- 
libkpeople packaging



More information about the pkg-kde-commits mailing list