From 747a9f4623521bf4d72e9c76d07e1452bf82a7ea Mon Sep 17 00:00:00 2001 From: Jimmy Huang Date: Wed, 3 Apr 2013 10:17:34 -0700 Subject: [PATCH] Fixed TIVI-644, incoming and outgoing numbers are "null" Freeing and setting contact info structure to NULL when seach didn't match or fails. Signed-off-by: Jimmy Huang --- utils/contacts-tizen.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/utils/contacts-tizen.c b/utils/contacts-tizen.c index dfa6d65..e99aa8c 100644 --- a/utils/contacts-tizen.c +++ b/utils/contacts-tizen.c @@ -658,12 +658,17 @@ static int _db_query_search_number(const char *number, Contact_Info **c_info) contacts_query_destroy(query); contacts_list_get_count(list, &contact_count); - if (contact_count == 0) + if (contact_count == 0) { + free(*c_info); + *c_info = NULL; return 0; + } err = contacts_list_get_current_record_p(list, &contact_number_h); if (CONTACTS_ERROR_NONE != err) { ERR("contacts_list_get_current_record_p() Failed(%d)", err); + free(*c_info); + *c_info = NULL; return -1; } @@ -671,12 +676,16 @@ static int _db_query_search_number(const char *number, Contact_Info **c_info) err = contacts_db_get_record(_contacts_contact._uri, contact_id, &contact_h); if (CONTACTS_ERROR_NONE != err) { ERR("contacts_db_get_record() Failed(%d)", err); + free(*c_info); + *c_info = NULL; return -1; } err = contacts_record_get_child_record_at_p(contact_h, _contacts_contact.name, 0, &contact_name_h); if (CONTACTS_ERROR_NONE != err) { ERR("contacts_record_get_child_record_at_p() Failed(%d)", err); + free(*c_info); + *c_info = NULL; return -1; } -- 2.7.4