diff options
author | Xavier Claessens <xavier.claessens@collabora.co.uk> | 2013-11-19 16:41:50 -0500 |
---|---|---|
committer | Simon McVittie <simon.mcvittie@collabora.co.uk> | 2014-01-14 11:15:48 +0000 |
commit | f1311ce39c6bcab1e25de20eb684bb78cce56e59 (patch) | |
tree | 4009008ac89a1664bb87c234b16ab592638e7061 | |
parent | e0edaf682056f487b315c3d8236a06ac8c156b8d (diff) | |
download | dbus-glib-f1311ce39c6bcab1e25de20eb684bb78cce56e59.tar.gz |
dbus_g_value_build_g_variant(): Fix NULL string case
g_variant_new_string(NULL) is not accepted.
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=71811
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
-rw-r--r-- | dbus/dbus-gtype-specialized.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/dbus/dbus-gtype-specialized.c b/dbus/dbus-gtype-specialized.c index 6d87b84..c1cc04a 100644 --- a/dbus/dbus-gtype-specialized.c +++ b/dbus/dbus-gtype-specialized.c @@ -1694,7 +1694,10 @@ dbus_g_value_build_g_variant (const GValue *value) else if (type == G_TYPE_DOUBLE) return g_variant_new_double (g_value_get_double (value)); else if (type == G_TYPE_STRING) - return g_variant_new_string (g_value_get_string (value)); + { + const gchar *str = g_value_get_string (value); + return g_variant_new_string ((str != NULL) ? str : ""); + } else if (type == G_TYPE_STRV) { const gchar * const *strv = g_value_get_boxed (value); |