From 7fffe0a98cfd098393d3c288f228991b3ebac7f1 Mon Sep 17 00:00:00 2001
From: Ian Fan <ianfan0@gmail.com>
Date: Mon, 22 Oct 2018 09:59:35 +0100
Subject: [PATCH] swaylock: exit early if unable to inhibit input

This stops the program from going into a spinlock without exiting
---
 swaylock/main.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/swaylock/main.c b/swaylock/main.c
index f2bb5c3e..8ed8adf5 100644
--- a/swaylock/main.c
+++ b/swaylock/main.c
@@ -925,6 +925,11 @@ int main(int argc, char **argv) {
 	}
 
 	zwlr_input_inhibit_manager_v1_get_inhibitor(state.input_inhibit_manager);
+	if (wl_display_roundtrip(state.display) == -1) {
+		wlr_log(WLR_ERROR, "Exiting - failed to inhibit input:"
+				" is another lockscreen already running?");
+		return 2;
+	}
 
 	if (state.zxdg_output_manager) {
 		struct swaylock_surface *surface;