static char* _get_phonebook_type(enum tel_phonebook_type pb_type)
{
- char *phonebook_type = NULL;
- dbg(" Function entry ");
dbg("pb_type = %d", pb_type);
- phonebook_type = (char*)calloc(sizeof(char), VAL_FIVE);
- if(NULL == phonebook_type) {
- err("Memory allcoation failed");
- return phonebook_type;
- }
-
- switch(pb_type)
- {
+ switch(pb_type) {
case PB_TYPE_FDN:
- phonebook_type = "FD";
- break;
+ return "FD";
case PB_TYPE_ADN:
case PB_TYPE_AAS:
case PB_TYPE_GAS:
- phonebook_type = "SM";
- break;
+ return "SM";
case PB_TYPE_SDN:
- phonebook_type = "SN";
- break;
+ return "SN";
case PB_TYPE_USIM:
- phonebook_type = "AP";
- break;
+ return "AP";
default:
dbg("Invalid pb_type [%02x]", pb_type);
- free(phonebook_type);
- phonebook_type = NULL;
- break;
+ return NULL;
}
- dbg(" Function exit");
- return phonebook_type;
}
static enum tel_phonebook_type _get_phonebook_enum(const char* pb_type)
memset(&resp_readrecord, 0x00, sizeof(struct tresp_phonebook_read_record));
resp_readrecord.result = PB_FAIL;
resp_readrecord.phonebook_type = *selected_pb;
-
+
if(resp->success > 0)
{
CoreObject *o = NULL;
__pbindex.total_count = res.total_count;
}
dbg("used count = %d, total count= %d", res.used_count, res.total_count);
- free(pbtype);
+ g_free(pbtype);
pbtype = NULL;
}
else{
member = util_removeQuotes((void*)temp);
memcpy(res.number, member, strlen(member));
dbg("number %s - %d", res.number, strlen((const char*)res.number));
- free(member);
+ g_free(member);
member = NULL;
/*Remove the quotes("") from the name string*/
member = util_removeQuotes((void*)temp);
memcpy(res.name, member, strlen(member));
dbg("name %s - %d", res.name, strlen((const char*)res.name));
- free(member);
+ g_free(member);
member = NULL;
res.dcs = PB_TEXT_ASCII;
res.name_len = strlen((const char*)res.name);
dbg("SIM barred-dialling-number");
}
pbtype = strtok (NULL, "(,)");
- free(temp);
+ g_free(temp);
}
noti_data.b_init = TRUE;
tcore_hal_send_request(hal, pending);
- free(phonebook_type);
g_free(cmd_str);
dbg(" Function exit");
return TCORE_RETURN_SUCCESS;
.delete_record = s_delete_record,
};
-gboolean s_phonebook_init(TcorePlugin *p, TcoreHal *h)
+gboolean s_phonebook_init(TcorePlugin *cp, CoreObject *co_phonebook)
{
- CoreObject *o = NULL;
-
dbg("Entry");
- o = tcore_phonebook_new(p, "phonebook", &phonebook_ops, h);
- if (!o)
- return FALSE;
- tcore_object_add_callback(o, "+PBREADY", on_event_phonebook_status, NULL);
+ tcore_phonebook_override_ops(co_phonebook, &phonebook_ops);
+
+ tcore_object_override_callback(co_phonebook, "+PBREADY", on_event_phonebook_status, NULL);
+
dbg("Exit");
+
return TRUE;
}
-void s_phonebook_exit(TcorePlugin *p)
+void s_phonebook_exit(TcorePlugin *cp, CoreObject *co_phonebook)
{
- CoreObject *o = NULL;
- o = tcore_plugin_ref_core_object(p, "phonebook");
- if (!o)
- return;
-
- tcore_phonebook_free(o);
+ dbg("Exit");
}