[PATCH 2/3] shell: fix compositor wakeup while locked

Pekka Paalanen ppaalanen at gmail.com
Wed Nov 16 03:47:34 PST 2011


Compositor is locked, woken up, unlock dialog is shown; if the
compositor does to sleep again, before being unlocked, it will never
wake up again, because unlock() becomes a no-op, yet it should wake the
compositor up.

Fix this by letting unlock() to wake up the compositor, if lock surface
is present.

Signed-off-by: Pekka Paalanen <ppaalanen at gmail.com>
---
 compositor/shell.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/compositor/shell.c b/compositor/shell.c
index 822c8c9..3a71697 100644
--- a/compositor/shell.c
+++ b/compositor/shell.c
@@ -1037,7 +1037,7 @@ unlock(struct wlsc_shell *base)
 {
 	struct wl_shell *shell = container_of(base, struct wl_shell, shell);
 
-	if (!shell->locked) {
+	if (!shell->locked || shell->lock_surface) {
 		wlsc_compositor_wake(shell->compositor);
 		return;
 	}
-- 
1.7.3.4



More information about the wayland-devel mailing list