summaryrefslogtreecommitdiffstats
path: root/src/compositor/extensions/qwaylandxdgshellv5.cpp
diff options
context:
space:
mode:
authorJohan Klokkhammer Helsing <johan.helsing@qt.io>2018-03-07 16:32:34 +0100
committerJohan Helsing <johan.helsing@qt.io>2018-03-15 12:49:07 +0000
commitc5b6bec872b2f22ec7b8d749d5f72b5ed0c4ddd4 (patch)
tree47d5f18998470292f0bd749d2daa3704957e86c8 /src/compositor/extensions/qwaylandxdgshellv5.cpp
parent46ab6e3e398c8ccff612bca746ba417ec974f975 (diff)
Compositor: Don't call send_configure variants with an invalid size
Print a warning and return instead. Change-Id: I1db5109f633ee2dc7d252b387c207f474784da43 Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@liri.io> Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
Diffstat (limited to 'src/compositor/extensions/qwaylandxdgshellv5.cpp')
-rw-r--r--src/compositor/extensions/qwaylandxdgshellv5.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/compositor/extensions/qwaylandxdgshellv5.cpp b/src/compositor/extensions/qwaylandxdgshellv5.cpp
index d696e082a..cbcd50ae4 100644
--- a/src/compositor/extensions/qwaylandxdgshellv5.cpp
+++ b/src/compositor/extensions/qwaylandxdgshellv5.cpp
@@ -1209,6 +1209,10 @@ QSize QWaylandXdgSurfaceV5::sizeForResize(const QSizeF &size, const QPointF &del
*/
uint QWaylandXdgSurfaceV5::sendConfigure(const QSize &size, const QVector<uint> &states)
{
+ if (!size.isValid()) {
+ qWarning() << "Can't configure xdg surface (v5) with an invalid size" << size;
+ return 0;
+ }
Q_D(QWaylandXdgSurfaceV5);
auto statesBytes = QByteArray::fromRawData((char *)states.data(), states.size() * sizeof(State));
QWaylandSurface *surface = qobject_cast<QWaylandSurface *>(extensionContainer());