diff --git a/src/client/qwaylandclipboard.cpp b/src/client/qwaylandclipboard.cpp index a2b7a6697de1a5654be9cd80e5768a444b528b1b..5399e79d1182278bbcfc485ad8d70a4bc87f9cdb 100644 --- a/src/client/qwaylandclipboard.cpp +++ b/src/client/qwaylandclipboard.cpp @@ -54,11 +54,11 @@ QWaylandClipboard::~QWaylandClipboard() QMimeData *QWaylandClipboard::mimeData(QClipboard::Mode mode) { if (mode != QClipboard::Clipboard) - return 0; + return &m_emptyData; QWaylandInputDevice *inputDevice = mDisplay->currentInputDevice(); if (!inputDevice || !inputDevice->dataDevice()) - return 0; + return &m_emptyData; QWaylandDataSource *source = inputDevice->dataDevice()->selectionSource(); if (source) { @@ -68,7 +68,7 @@ QMimeData *QWaylandClipboard::mimeData(QClipboard::Mode mode) if (inputDevice->dataDevice()->selectionOffer()) return inputDevice->dataDevice()->selectionOffer()->mimeData(); - return 0; + return &m_emptyData; } void QWaylandClipboard::setMimeData(QMimeData *data, QClipboard::Mode mode) diff --git a/src/client/qwaylandclipboard_p.h b/src/client/qwaylandclipboard_p.h index 02223076e1f923d99df13fd08daba2b1ee41b569..e9344c5f37c89b8710b03910477e7e5202d29290 100644 --- a/src/client/qwaylandclipboard_p.h +++ b/src/client/qwaylandclipboard_p.h @@ -47,6 +47,7 @@ #include <qpa/qplatformclipboard.h> #include <QtCore/QVariant> +#include <QtCore/QMimeData> #include <QtWaylandClient/private/qwaylandclientexport_p.h> @@ -70,6 +71,7 @@ public: private: QWaylandDisplay *mDisplay; + QMimeData m_emptyData; }; }