/** * Inserts a link into the list before the given existing link. * * @param list the list to modify * @param before_this_link existing link to insert before, or #NULL to append * @param link the link to insert */ void _dbus_list_insert_before_link (DBusList **list, DBusList *before_this_link, DBusList *link) { if (before_this_link == NULL) _dbus_list_append_link (list, link); else link_before (list, before_this_link, link); }
static void service_dirs_append_link_unique_or_free (DBusList **service_dirs, DBusList *dir_link) { if (!service_dirs_find_dir (service_dirs, dir_link->data)) { _dbus_list_append_link (service_dirs, dir_link); } else { dbus_free (dir_link->data); _dbus_list_free_link (dir_link); } }