gsettings-tool: implement range-checking
authorRyan Lortie <desrt@desrt.ca>
Mon, 4 Oct 2010 07:40:22 +0000 (03:40 -0400)
committerRyan Lortie <desrt@desrt.ca>
Mon, 4 Oct 2010 07:42:43 +0000 (03:42 -0400)
Prevent assertion messages from spewing forth and also ensure that we
exit with an error status in the event that the value was out of range.

Bug #631264.

gio/gsettings-tool.c

index e35dd37..c751eeb 100644 (file)
@@ -293,6 +293,13 @@ gsettings_set (GSettings   *settings,
       exit (1);
     }
 
+  if (!g_settings_range_check (settings, key, new))
+    {
+      g_printerr ("The provided value is outside of the valid range\n");
+      g_variant_unref (new);
+      exit (1);
+    }
+
   g_settings_set_value (settings, key, new);
   g_variant_unref (existing);
   g_variant_unref (new);