static void _notification_cb(void *data, notification_type_e type)
{
- char *noti = NULL;
Eina_List *l;
struct datamgr *dm;
struct datamgr_item *di;
dm = data;
- snprintf(buf, sizeof(buf), "%d", utils_get_notification_count());
- noti = strdup(buf);
-
- viewmgr_update_view(VIEW_HOME, UPDATE_TYPE_NOTI, noti);
EINA_LIST_FOREACH(dm->list, l, di) {
- if (di->noti)
- di->subtitle = noti;
+ if (!di->noti)
+ continue;
+
+ snprintf(buf, sizeof(buf), "%d",
+ utils_get_notification_count());
+ viewmgr_update_view(VIEW_HOME, UPDATE_TYPE_NOTI, buf);
+ free(di->subtitle);
+ di->subtitle = strdup(buf);
}
}