Handle EINTR gracefully in Wayland clipboard.
authorLaszlo Agocs <laszlo.p.agocs@nokia.com>
Wed, 10 Aug 2011 07:05:03 +0000 (10:05 +0300)
committerQt by Nokia <qt-info@nokia.com>
Fri, 12 Aug 2011 08:49:52 +0000 (10:49 +0200)
Change-Id: Idd5082f02eb6708685421492afb8ad5b8546a5d6
Reviewed-on: http://codereview.qt.nokia.com/2810
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
src/plugins/platforms/wayland/qwaylandclipboard.cpp

index d20f183..45f0abc 100644 (file)
@@ -50,6 +50,7 @@
 #include <QtCore/QFile>
 #include <QtCore/QtDebug>
 #include <QtGui/private/qdnd_p.h>
+#include <QtCore/private/qcore_unix_p.h> // for QT_READ
 
 static QWaylandClipboard *clipboard = 0;
 
@@ -219,7 +220,7 @@ QVariant QWaylandClipboard::retrieveData(const QString &mimeType, QVariant::Type
     char buf[256];
     int n;
     close(pipefd[1]);
-    while ((n = read(pipefd[0], &buf, sizeof buf)) > 0)
+    while ((n = QT_READ(pipefd[0], &buf, sizeof buf)) > 0)
         content.append(buf, n);
     close(pipefd[0]);
     return content;