From 0a67fb0484001e7a0bf14eb73c67f9e74325d524 Mon Sep 17 00:00:00 2001
From: Luca Bacci <luca.bacci982@gmail.com>
Date: Tue, 2 Apr 2024 11:31:08 +0200
Subject: [PATCH] QuitDialog: disconnect signal handler on dialog destroy

Index: app/dialogs/quit-dialog.c
--- app/dialogs/quit-dialog.c.orig
+++ app/dialogs/quit-dialog.c
@@ -300,7 +300,7 @@ quit_close_all_dialog_new (Gimp     *gimp,
 
   closure = g_cclosure_new (G_CALLBACK (quit_close_all_dialog_container_changed),
                             private, NULL);
-  g_object_watch_closure (G_OBJECT (private->dialog), closure);
+  g_signal_connect_swapped (private->dialog, "destroy", G_CALLBACK (g_closure_invalidate), closure);
   g_signal_connect_closure (private->images, "add", closure, FALSE);
   g_signal_connect_closure (private->images, "remove", closure, FALSE);
 
