From 715067d38d5e123adb27760614da43c9043fdb12 Mon Sep 17 00:00:00 2001 From: Denis Kenzior Date: Wed, 12 Aug 2009 19:37:29 -0500 Subject: Fix a segfault in need_merge --- src/phonebook.c | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) (limited to 'src') diff --git a/src/phonebook.c b/src/phonebook.c index 67cd0ec5..6a1a3c54 100644 --- a/src/phonebook.c +++ b/src/phonebook.c @@ -309,11 +309,23 @@ static DBusMessage *generate_export_entries_reply(struct ofono_modem *modem, static gboolean need_merge(const char *text) { - int len = strlen(text); - char c = tolower(text[len-1]); + int len; + char c; + + if (!text) + return FALSE; + + len = strlen(text); + + if (len < 2) + return FALSE; + + c = tolower(text[len-1]); + if ((text[len-2] == '/') && - ((c == 'w') || (c == 'h') || (c == 'm') || (c == 'o'))) + ((c == 'w') || (c == 'h') || (c == 'm') || (c == 'o'))) return TRUE; + return FALSE; } -- cgit v1.2.3