[SCM] ktp-common-internals packaging branch, master, updated. debian/15.12.1-2-1839-gf0635e9

Maximiliano Curia maxy at moszumanska.debian.org
Mon May 9 09:04:57 UTC 2016


Gitweb-URL: http://git.debian.org/?p=pkg-kde/applications/ktp-common-internals.git;a=commitdiff;h=df6571f

The following commit has been merged in the master branch:
commit df6571f9d103e550c1962697282eb5b4144b597c
Author: David Edmundson <kde at davidedmundson.co.uk>
Date:   Wed Feb 1 23:25:32 2012 +0000

    Make message processor a proper singleton
---
 KTp/message-processor.cpp | 17 +++++++++++++++--
 KTp/message-processor.h   | 12 ++++++++++--
 2 files changed, 25 insertions(+), 4 deletions(-)

diff --git a/KTp/message-processor.cpp b/KTp/message-processor.cpp
index 3bb0353..06857c3 100644
--- a/KTp/message-processor.cpp
+++ b/KTp/message-processor.cpp
@@ -20,15 +20,28 @@
 #include "message-processor.h"
 #include "filters.h"
 
-QList<AbstractMessageFilter*> MessageProcessor::m_filters;
+MessageProcessor* MessageProcessor::s_instance = 0;
 
 AbstractMessageFilter::~AbstractMessageFilter()
 {
+}
 
+MessageProcessor* MessageProcessor::instance()
+{
+    static QMutex mutex;
+    if (!s_instance)
+    {
+        mutex.lock();
+        if (!s_instance) {
+            s_instance = new MessageProcessor;
+        }
+        mutex.unlock();
+    }
+    return s_instance;
 }
 
 
-MessageProcessor::MessageProcessor(QObject* parent): QObject(parent)
+MessageProcessor::MessageProcessor()
 {
     m_filters << new UrlFilter();
 }
diff --git a/KTp/message-processor.h b/KTp/message-processor.h
index 50cacec..380a510 100644
--- a/KTp/message-processor.h
+++ b/KTp/message-processor.h
@@ -34,13 +34,21 @@ class MessageProcessor : public QObject
 {
 
 public:
-    explicit MessageProcessor(QObject* parent = 0);
+    static MessageProcessor* instance();
+
     ~MessageProcessor();
 
     //text-ui will call this somewhere in handleIncommingMessage just before displaying it
     KTp::Message processIncommingMessage(Tp::ReceivedMessage);
+
+protected:
+    explicit MessageProcessor();
+
+
 private:
-    static QList<AbstractMessageFilter*> m_filters;
+    static MessageProcessor* s_instance;
+    QList<AbstractMessageFilter*> m_filters;
+
 };
 
 #endif // MESSAGE_PROCESSOR_H

-- 
ktp-common-internals packaging



More information about the pkg-kde-commits mailing list