dentry->extraction_list = (struct list_head){NULL, NULL};
}
-static void
-dentry_delete_from_list(struct wim_dentry *dentry)
+static int
+dentry_delete_from_list(struct wim_dentry *dentry, void *_ignore)
{
list_del(&dentry->extraction_list);
dentry_reset_extraction_list_node(dentry);
-}
-
-static int
-do_dentry_delete_from_list(struct wim_dentry *dentry, void *_ignore)
-{
- dentry_delete_from_list(dentry);
return 0;
}
return 0;
skip_dentry:
- for_dentry_in_tree(dentry, do_dentry_delete_from_list, NULL);
+ for_dentry_in_tree(dentry, dentry_delete_from_list, NULL);
return 0;
}
INIT_LIST_HEAD(&ctx.stream_list);
ret = dentry_list_ref_streams(&dentry_list, &ctx);
if (ret)
- goto out_finish_or_abort_extract;
+ goto out_destroy_stream_list;
if (extract_flags & WIMLIB_EXTRACT_FLAG_FROM_PIPE) {
/* When extracting from a pipe, the number of bytes of data to