summaryrefslogtreecommitdiff
path: root/src/protocols/XDGShell.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/protocols/XDGShell.cpp')
-rw-r--r--src/protocols/XDGShell.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/protocols/XDGShell.cpp b/src/protocols/XDGShell.cpp
index db274e3c..4170d4dd 100644
--- a/src/protocols/XDGShell.cpp
+++ b/src/protocols/XDGShell.cpp
@@ -319,8 +319,11 @@ uint32_t CXDGToplevelResource::setSuspeneded(bool sus) {
void CXDGToplevelResource::applyState() {
wl_array arr;
wl_array_init(&arr);
- wl_array_add(&arr, pendingApply.states.size() * sizeof(int));
- memcpy(arr.data, pendingApply.states.data(), pendingApply.states.size() * sizeof(int));
+
+ if (!pendingApply.states.empty()) {
+ wl_array_add(&arr, pendingApply.states.size() * sizeof(int));
+ memcpy(arr.data, pendingApply.states.data(), pendingApply.states.size() * sizeof(int));
+ }
resource->sendConfigure(pendingApply.size.x, pendingApply.size.y, &arr);