EbSdbSearchData is a tiny object that gets allocated for each search result.
For such objects the slice allocator must be used to improve performance and
to reduce memory fragmentation.
gchar **name)
{
GSList **vcard_data = ref;
- EbSdbSearchData *search_data = g_new0 (EbSdbSearchData, 1);
+ EbSdbSearchData *search_data = g_slice_new0 (EbSdbSearchData);
EContact *contact = e_contact_new ();
gchar *vcard;
gint i;
gchar **name)
{
GSList **vcard_data = ref;
- EbSdbSearchData *s_data = g_new0 (EbSdbSearchData, 1);
+ EbSdbSearchData *s_data = g_slice_new0 (EbSdbSearchData);
if (cols[0])
s_data->uid = g_strdup (cols[0]);
g_free (s_data->uid);
g_free (s_data->vcard);
g_free (s_data->bdata);
- g_free (s_data);
+ g_slice_free (EbSdbSearchData, s_data);
}
}