From 9086328508849f4f4a148f85aecf2d891d40315f Mon Sep 17 00:00:00 2001 From: Denis Kenzior Date: Fri, 4 Feb 2011 12:36:14 -0600 Subject: sms: Use a better pattern for bearer_from_string --- src/sms.c | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) (limited to 'src/sms.c') diff --git a/src/sms.c b/src/sms.c index bb94b3d0..8e3b0570 100644 --- a/src/sms.c +++ b/src/sms.c @@ -144,18 +144,20 @@ static const char *sms_bearer_to_string(int bearer) return "unknown"; } -static int sms_bearer_from_string(const char *str) +static gboolean sms_bearer_from_string(const char *str, int *bearer) { if (g_str_equal(str, "ps-only")) - return 0; + *bearer = 0; else if (g_str_equal(str, "cs-only")) - return 1; + *bearer = 1; else if (g_str_equal(str, "ps-preferred")) - return 2; + *bearer = 2; else if (g_str_equal(str, "cs-preferred")) - return 3; + *bearer = 3; + else + return FALSE; - return -1; + return TRUE; } static const char *sms_alphabet_to_string(enum sms_alphabet alphabet) @@ -535,8 +537,7 @@ static DBusMessage *sms_set_property(DBusConnection *conn, DBusMessage *msg, dbus_message_iter_get_basic(&var, &value); - bearer = sms_bearer_from_string(value); - if (bearer < 0) + if (sms_bearer_from_string(value, &bearer) != TRUE) return __ofono_error_invalid_format(msg); if (sms->driver->bearer_set == NULL || -- cgit v1.2.3