/* Traverse a list and invoke a callback for each item. */
static void dl_emit_single_cb_on(dep_list *list, single_entry_cb cb, void *udata)
/* Traverse a list and invoke a callback for each item. */
static void dl_emit_single_cb_on(dep_list *list, single_entry_cb cb, void *udata)
{
    while (cb && list != NULL) {
        (cb) (udata, list->path, list->inode);
        list = list->next;
    }
}