From 73ec6964d7a14eba3ec7118041e48e0a21438e52 Mon Sep 17 00:00:00 2001 From: Federico Mena Quintero Date: Wed, 18 Mar 2009 16:17:00 -0600 Subject: bfo20738 - Return a useful error message from dbus_signature_validate() Signed-off-by: Federico Mena Quintero --- dbus/dbus-signature.c | 12 +++++++++--- 1 file 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; + } } /** -- cgit