]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/kitemviews/private/kfileitemclipboard.cpp
Merge remote-tracking branch 'origin/master' into frameworks
[dolphin.git] / src / kitemviews / private / kfileitemclipboard.cpp
index 6d608564152270eaa00ca06f12730111ac6abcf8..1fb147716991026c4474026831aad4b163328290 100644 (file)
@@ -55,12 +55,22 @@ KFileItemClipboard::~KFileItemClipboard()
 void KFileItemClipboard::updateCutItems()
 {
     const QMimeData* mimeData = QApplication::clipboard()->mimeData();
+
+    // mimeData can be 0 according to https://bugs.kde.org/show_bug.cgi?id=335053
+    if (!mimeData) {
+        m_cutItems.clear();
+        emit cutItemsChanged();
+        return;
+    }
+
     const QByteArray data = mimeData->data("application/x-kde-cutselection");
     const bool isCutSelection = (!data.isEmpty() && data.at(0) == QLatin1Char('1'));
     if (isCutSelection) {
         m_cutItems = KUrl::List::fromMimeData(mimeData).toSet();
-        emit cutItemsChanged();
+    } else {
+        m_cutItems.clear();
     }
+    emit cutItemsChanged();
 }
 
 KFileItemClipboard::KFileItemClipboard() :
@@ -69,8 +79,7 @@ KFileItemClipboard::KFileItemClipboard() :
 {
     updateCutItems();
 
-    connect(QApplication::clipboard(), SIGNAL(dataChanged()),
-            this, SLOT(updateCutItems()));
+    connect(QApplication::clipboard(), &QClipboard::dataChanged,
+            this, &KFileItemClipboard::updateCutItems);
 }
 
-#include "kfileitemclipboard.moc"