summaryrefslogtreecommitdiffstats
path: root/src/client/qwaylandxdgsurface.cpp
diff options
context:
space:
mode:
authorLiang Qi <liang.qi@theqtcompany.com>2016-03-22 19:05:17 +0100
committerLiang Qi <liang.qi@theqtcompany.com>2016-03-22 19:05:17 +0100
commit573fbed837e2b7281c7a828cdcda141fbbcac030 (patch)
tree8535b043edd0a06c4b01f63bbfb0ae0953cff9df /src/client/qwaylandxdgsurface.cpp
parent6341bf99c981aa3cfbb01589e499aa4b3f6dca21 (diff)
parent3fcb77996b3e6c076d50db9ccf9da3aefd24f159 (diff)
Merge remote-tracking branch 'origin/5.6' into 5.7
Conflicts: src/compositor/compositor_api/qwaylandcompositor.h src/compositor/compositor_api/qwaylandquickcompositor.h src/compositor/compositor_api/qwaylandsurfaceitem.h src/compositor/windowmanagerprotocol/waylandwindowmanagerintegration_p.h Change-Id: I094128be314d2c3d4fe350fa7a162e37da34ae10
Diffstat (limited to 'src/client/qwaylandxdgsurface.cpp')
-rw-r--r--src/client/qwaylandxdgsurface.cpp10
1 files changed, 4 insertions, 6 deletions
diff --git a/src/client/qwaylandxdgsurface.cpp b/src/client/qwaylandxdgsurface.cpp
index 51630af96..b9f07f0cc 100644
--- a/src/client/qwaylandxdgsurface.cpp
+++ b/src/client/qwaylandxdgsurface.cpp
@@ -179,15 +179,13 @@ void QWaylandXdgSurface::sendProperty(const QString &name, const QVariant &value
void QWaylandXdgSurface::xdg_surface_configure(int32_t width, int32_t height, struct wl_array *states,uint32_t serial)
{
- uint32_t *state = 0;
+ uint32_t *state = reinterpret_cast<uint32_t*>(states->data);
+ size_t numStates = states->size / sizeof(uint32_t);
bool aboutToMaximize = false;
bool aboutToFullScreen = false;
- state = (uint32_t*) states->data;
-
- for (uint32_t i = 0; i < states->size / sizeof(state) ; i++)
- {
- switch (*(state+i)) {
+ for (size_t i = 0; i < numStates; i++) {
+ switch (state[i]) {
case XDG_SURFACE_STATE_MAXIMIZED:
aboutToMaximize = ((width > 0) && (height > 0));
break;