Provide instance()-method for Utils::NetworkAccessManager.

Preemptively fix exit warning "QEventLoop cannot be used
without QApplication" (Qt 5/dev) emitted by destruction of
the of the generic highlighter manager singleton which had a
member of type Utils::NetworkAccessManager.

Use a single instance of Utils::NetworkAccessManager for the
main thread and clean up properly using a qAddPostRoutine().

Change-Id: Ida57b9028a79eb4927818ce49088ea567f3bdfd6
Reviewed-by: hjk <hjk121@nokiamail.com>
Reviewed-by: Peter Hartmann <phartmann@blackberry.com>
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
This commit is contained in:
Friedemann Kleint
2013-04-09 09:58:17 +02:00
parent 2ead48fb26
commit 9d7e786b03
21 changed files with 54 additions and 103 deletions

View File

@@ -49,13 +49,12 @@ class PasteReceiver : public QObject
public:
PasteReceiver(const QString &protocol, const QString &filePath) : m_filePath(filePath)
{
const QSharedPointer<NetworkAccessManagerProxy> accessMgr(new NetworkAccessManagerProxy);
if (protocol == KdePasteProtocol::protocolName().toLower())
m_protocol.reset(new KdePasteProtocol(accessMgr));
m_protocol.reset(new KdePasteProtocol);
else if (protocol == PasteBinDotCaProtocol::protocolName().toLower())
m_protocol.reset(new PasteBinDotCaProtocol(accessMgr));
m_protocol.reset(new PasteBinDotCaProtocol);
else if (protocol == PasteBinDotComProtocol::protocolName().toLower())
m_protocol.reset(new PasteBinDotComProtocol(accessMgr));
m_protocol.reset(new PasteBinDotComProtocol);
else
qFatal("Internal error: Invalid protocol.");
}