summaryrefslogtreecommitdiff
path: root/json-glib/json-gobject.c
diff options
context:
space:
mode:
Diffstat (limited to 'json-glib/json-gobject.c')
-rw-r--r--json-glib/json-gobject.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/json-glib/json-gobject.c b/json-glib/json-gobject.c
index fb97bd4..fbc6efc 100644
--- a/json-glib/json-gobject.c
+++ b/json-glib/json-gobject.c
@@ -398,6 +398,13 @@ json_gobject_dump (GObject *gobject)
else
g_object_get_property (gobject, pspec->name, &value);
+ /* skip if the value is the default for the property */
+ if (g_param_value_defaults (pspec, &value))
+ {
+ g_value_unset (&value);
+ continue;
+ }
+
/* if there is a serialization vfunc, then it is completely responsible
* for serializing the property, possibly by calling the implementation
* of the default JsonSerializable interface through chaining up