aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIsaac Freund <ifreund@ifreund.xyz>2021-08-12 21:18:26 +0200
committerIsaac Freund <ifreund@ifreund.xyz>2021-08-12 21:18:26 +0200
commit1e18ac9d7468c5d37f9c43587e8d87bf81c1f7ca (patch)
tree9a427f5ff86a6ce60319881f049befb76bcde9bf
parent1baf3bf4622f88b83c84008fd19d0f9d2dd573c7 (diff)
downloadriver-1e18ac9d7468c5d37f9c43587e8d87bf81c1f7ca.tar.gz
river-1e18ac9d7468c5d37f9c43587e8d87bf81c1f7ca.tar.xz
layer-shell: ignore commits on closed layer surface
-rw-r--r--river/LayerSurface.zig3
1 files changed, 3 insertions, 0 deletions
diff --git a/river/LayerSurface.zig b/river/LayerSurface.zig
index 68f2dc8..37f2c69 100644
--- a/river/LayerSurface.zig
+++ b/river/LayerSurface.zig
@@ -139,6 +139,9 @@ fn handleUnmap(listener: *wl.Listener(*wlr.LayerSurfaceV1), wlr_layer_surface: *
fn handleCommit(listener: *wl.Listener(*wlr.Surface), wlr_surface: *wlr.Surface) void {
const self = @fieldParentPtr(Self, "commit", listener);
+ // Ignore commits if the surface has been closed.
+ if (self.wlr_layer_surface.closed) return;
+
assert(self.wlr_layer_surface.output != null);
// If a surface is committed while it is not mapped, we may need to send a configure.