diff --git a/thunar/thunar-column-model.c b/thunar/thunar-column-model.c
index d2fc88d5ac53502c09a0e15debf67614171cf79f..1ece1be7ea0781d87ad985bdc9046af276539814 100644
--- a/thunar/thunar-column-model.c
+++ b/thunar/thunar-column-model.c
@@ -213,6 +213,10 @@ thunar_column_model_finalize (GObject *object)
   g_signal_handlers_disconnect_matched (G_OBJECT (column_model->preferences), G_SIGNAL_MATCH_DATA, 0, 0, NULL, NULL, column_model);
   g_object_unref (G_OBJECT (column_model->preferences));
 
+  /* drop any running "save width" timer */
+  if (G_UNLIKELY (column_model->save_width_timer_id != 0))
+    g_source_remove (column_model->save_width_timer_id);
+
   (*G_OBJECT_CLASS (thunar_column_model_parent_class)->finalize) (object);
 }