summaryrefslogtreecommitdiff
path: root/xfconf
diff options
context:
space:
mode:
authorNick Schermer <nick@xfce.org>2012-04-19 19:25:56 +0200
committerNick Schermer <nick@xfce.org>2012-04-19 19:25:56 +0200
commit1ac55249cb4981ca4169ffb99cf9c5c96b19ca29 (patch)
treef01e259b497fbc1b5c2125385a2de4116b2b7440 /xfconf
parentf206c1da605d4a8a1c8a136d4a367a51fc3a5629 (diff)
downloadxfconf-1ac55249cb4981ca4169ffb99cf9c5c96b19ca29.tar.gz
Accept NULL as a string value (bug #8726).
The new utf8 checks were aborting, while null is a valid value for strings.
Diffstat (limited to 'xfconf')
-rw-r--r--xfconf/xfconf-channel.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/xfconf/xfconf-channel.c b/xfconf/xfconf-channel.c
index 546db3b..b44b1da 100644
--- a/xfconf/xfconf-channel.c
+++ b/xfconf/xfconf-channel.c
@@ -1019,7 +1019,7 @@ xfconf_channel_set_string(XfconfChannel *channel,
gboolean ret;
g_return_val_if_fail(XFCONF_IS_CHANNEL(channel) && property, FALSE);
- g_return_val_if_fail(g_utf8_validate(value, -1, NULL), FALSE);
+ g_return_val_if_fail(value == NULL || g_utf8_validate(value, -1, NULL), FALSE);
g_value_init(&val, G_TYPE_STRING);
g_value_set_static_string(&val, value);
@@ -1325,6 +1325,7 @@ xfconf_channel_set_property(XfconfChannel *channel,
&& property
&& G_IS_VALUE(value), FALSE);
g_return_val_if_fail(!G_VALUE_HOLDS_STRING(value)
+ || g_value_get_string(value) == NULL
|| g_utf8_validate(g_value_get_string(value), -1, NULL),
FALSE);