diff --git a/ChangeLog b/ChangeLog
index 97cc008358a93b2ae6a46597bde5d7eaa926b920..afda4fa747c04b09db7c05a3304e1d5a0d65f09f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2007-05-20	Benedikt Meurer <benny@xfce.org>
+
+	* thunar/thunar-preferences.c(thunar_preferences_set_property):
+	  Properly initialize value to its default prior to comparing
+	  with a (probably) new value.
+
 2007-05-20	Benedikt Meurer <benny@xfce.org>
 
 	* plugins/thunar-uca/thunar-uca-editor.c: Properly quote files
diff --git a/thunar/thunar-preferences.c b/thunar/thunar-preferences.c
index 75ca901575f71da6071df7eddc596c860631c6b1..e15cce7282c166dc38992f706b6cf4524ed83da2 100644
--- a/thunar/thunar-preferences.c
+++ b/thunar/thunar-preferences.c
@@ -731,7 +731,10 @@ thunar_preferences_set_property (GObject      *object,
 
   dst = preferences->values + prop_id;
   if (G_UNLIKELY (!G_IS_VALUE (dst)))
-    g_value_init (dst, pspec->value_type);
+    {
+      g_value_init (dst, pspec->value_type);
+      g_param_value_set_default (pspec, dst);
+    }
 
   if (g_param_values_cmp (pspec, value, dst) != 0)
     {