diff -ruN gnome-desktop-3.22.2.orig/libgnome-desktop/gnome-wall-clock.c gnome-desktop-3.22.2/libgnome-desktop/gnome-wall-clock.c
--- gnome-desktop-3.22.2.orig/libgnome-desktop/gnome-wall-clock.c	2016-10-21 21:40:39.000000000 -0700
+++ gnome-desktop-3.22.2/libgnome-desktop/gnome-wall-clock.c	2017-01-21 03:29:16.440567932 -0800
@@ -105,11 +105,17 @@
 	}
 
 	if (self->priv->tz_monitor != NULL) {
+	        g_signal_handlers_disconnect_by_func (self->priv->tz_monitor,
+                                            	      G_CALLBACK (on_tz_changed),
+                                                      self);
 		g_object_unref (self->priv->tz_monitor);
 		self->priv->tz_monitor = NULL;
 	}
 
 	if (self->priv->desktop_settings != NULL) {
+	        g_signal_handlers_disconnect_by_func (self->priv->desktop_settings,
+                                            	      G_CALLBACK (on_schema_change),
+                                                      self);
 		g_object_unref (self->priv->desktop_settings);
 		self->priv->desktop_settings = NULL;
 	}
