From 0fe994d7552c03447448799756a2699e5565714b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Guido=20G=C3=BCnther?= <agx@sigxcpu.org>
Date: Sat, 12 May 2018 11:39:35 +0200
Subject: [PATCH] phosh: lockscreen robustness

Harmless now but might prevent future errors
---
 src/phosh.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/src/phosh.c b/src/phosh.c
index 75b4724..39b2d48 100644
--- a/src/phosh.c
+++ b/src/phosh.c
@@ -162,10 +162,13 @@ lockscreen_unlock_cb (PhoshShell *self, PhoshLockscreen *window)
 {
   PhoshShellPrivate *priv = phosh_shell_get_instance_private (self);
 
-  g_return_if_fail (window);
+  g_return_if_fail (PHOSH_IS_LOCKSCREEN (window));
+  g_return_if_fail (window == PHOSH_LOCKSCREEN (priv->lockscreen->window));
 
   g_signal_handler_disconnect (window, priv->unlock_handler_id);
-  gtk_widget_destroy (GTK_WIDGET (window));
+  priv->unlock_handler_id = 0;
+  gtk_widget_destroy (GTK_WIDGET (priv->lockscreen->window));
+  priv->lockscreen->window = NULL;
   zwlr_layer_surface_v1_destroy(priv->lockscreen->layer_surface);
   g_free (priv->lockscreen);
   priv->lockscreen = NULL;
-- 
GitLab