diff options
author | Federico Mena Quintero <federico@novell.com> | 2009-03-18 16:17:00 -0600 |
---|---|---|
committer | Colin Walters <walters@verbum.org> | 2009-04-21 14:09:54 -0400 |
commit | 27f8a31fe68bff0faa5941a4ffac0a4ff4a2b5d4 (patch) | |
tree | 2562870a60c82a7e7283be0b1a8bf82ddee40b7b /dbus/dbus-signature.c | |
parent | 099b5e59ea84d72bfe29a17e0934f6b2f492ddf3 (diff) | |
download | dbus-27f8a31fe68bff0faa5941a4ffac0a4ff4a2b5d4.tar.gz |
bfo20738 - Return a useful error message from dbus_signature_validate()
Signed-off-by: Federico Mena Quintero <federico@novell.com>
Diffstat (limited to 'dbus/dbus-signature.c')
-rw-r--r-- | dbus/dbus-signature.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/dbus/dbus-signature.c b/dbus/dbus-signature.c index a8864f8b..c7f8d0e3 100644 --- a/dbus/dbus-signature.c +++ b/dbus/dbus-signature.c @@ -233,12 +233,18 @@ dbus_signature_validate (const char *signature, { DBusString str; + DBusValidity reason; _dbus_string_init_const (&str, signature); - if (_dbus_validate_signature (&str, 0, _dbus_string_get_length (&str))) + reason = _dbus_validate_signature_with_reason (&str, 0, _dbus_string_get_length (&str)); + + if (reason == DBUS_VALID) return TRUE; - dbus_set_error (error, DBUS_ERROR_INVALID_SIGNATURE, "Corrupt type signature"); - return FALSE; + else + { + dbus_set_error (error, DBUS_ERROR_INVALID_SIGNATURE, _dbus_validity_to_error_message (reason)); + return FALSE; + } } /** |