diff --git a/src/terminal-tab-label.c b/src/terminal-tab-label.c
index a83d94f..6e9f064 100644
--- a/src/terminal-tab-label.c
+++ b/src/terminal-tab-label.c
@@ -213,8 +213,11 @@ terminal_tab_label_constructor (GType type,
 static void
 terminal_tab_label_finalize (GObject *object)
 {
-//   TerminalTabLabel *tab_label = TERMINAL_TAB_LABEL (object);
+  TerminalTabLabel *tab_label = TERMINAL_TAB_LABEL (object);
 
+  g_signal_handlers_disconnect_by_func (tab_label->priv->screen,
+                                        G_CALLBACK (sync_tab_label),
+                                        tab_label->priv->label);
   G_OBJECT_CLASS (terminal_tab_label_parent_class)->finalize (object);
 }
 
