summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristian Mollekopf <chrigi_1@fastmail.fm>2016-07-11 22:45:28 +0200
committerChristian Mollekopf <chrigi_1@fastmail.fm>2016-07-11 22:45:28 +0200
commit6642a7a497fdacd92260e2ef6396ddb874dcd7bd (patch)
treebf22d65c83bc5f2f734d670e9fd5a63c1780a79d
parent4b85680e9014efbd74ec5a4c4032e65b5494d6f9 (diff)
downloadsink-6642a7a497fdacd92260e2ef6396ddb874dcd7bd.tar.gz
sink-6642a7a497fdacd92260e2ef6396ddb874dcd7bd.zip
Avoid calling back into destroyed objects
-rw-r--r--examples/imapresource/imapserverproxy.cpp2
-rw-r--r--examples/imapresource/imapserverproxy.h3
2 files changed, 4 insertions, 1 deletions
diff --git a/examples/imapresource/imapserverproxy.cpp b/examples/imapresource/imapserverproxy.cpp
index 73ec654..510ca3e 100644
--- a/examples/imapresource/imapserverproxy.cpp
+++ b/examples/imapresource/imapserverproxy.cpp
@@ -113,7 +113,7 @@ KAsync::Job<void> ImapServerProxy::login(const QString &username, const QString
113 } 113 }
114 114
115 auto capabilitiesJob = new KIMAP::CapabilitiesJob(mSession); 115 auto capabilitiesJob = new KIMAP::CapabilitiesJob(mSession);
116 QObject::connect(capabilitiesJob, &KIMAP::CapabilitiesJob::capabilitiesReceived, [this](const QStringList &capabilities) { 116 QObject::connect(capabilitiesJob, &KIMAP::CapabilitiesJob::capabilitiesReceived, &mGuard, [this](const QStringList &capabilities) {
117 mCapabilities = capabilities; 117 mCapabilities = capabilities;
118 }); 118 });
119 auto namespaceJob = new KIMAP::NamespaceJob(mSession); 119 auto namespaceJob = new KIMAP::NamespaceJob(mSession);
diff --git a/examples/imapresource/imapserverproxy.h b/examples/imapresource/imapserverproxy.h
index 21228eb..e4766e9 100644
--- a/examples/imapresource/imapserverproxy.h
+++ b/examples/imapresource/imapserverproxy.h
@@ -127,6 +127,9 @@ public:
127 127
128 KAsync::Job<void> fetchFolders(std::function<void(const QVector<Folder> &)> callback); 128 KAsync::Job<void> fetchFolders(std::function<void(const QVector<Folder> &)> callback);
129 KAsync::Job<void> fetchMessages(const Folder &folder, std::function<void(const QVector<Message> &)> callback); 129 KAsync::Job<void> fetchMessages(const Folder &folder, std::function<void(const QVector<Message> &)> callback);
130
131private:
132 QObject mGuard;
130}; 133};
131 134
132} 135}