size_t wim_name_len;
int ret;
+ if (!w)
+ return WIMLIB_ERR_INVALID_PARAM;
+
wimfile_name = w->filename;
DEBUG("Replacing WIM file `%s'.", wimfile_name);
/* Write the file resources for the current image. */
static int write_file_resources(WIMStruct *w)
{
-
DEBUG("Writing file resources for image %u.", w->current_image);
return for_dentry_in_tree(wim_root_dentry(w), write_dentry_resources, w);
}
{
int ret;
+ if (!w || !path)
+ return WIMLIB_ERR_INVALID_PARAM;
+
if (image != WIM_ALL_IMAGES &&
(image < 1 || image > w->hdr.image_count))
return WIMLIB_ERR_INVALID_IMAGE;
+
+ if (w->hdr.total_parts != 1) {
+ ERROR("Cannot call wimlib_write() on part of a split WIM");
+ return WIMLIB_ERR_SPLIT_UNSUPPORTED;
+ }
+
if (image == WIM_ALL_IMAGES)
DEBUG("Writing all images to `%s'.", path);
else
if (ret != 0)
goto done;
- for_lookup_table_entry(w->lookup_table, zero_out_refcnts, NULL);
+ for_lookup_table_entry(w->lookup_table, lte_zero_out_refcnt, NULL);
w->write_flags = flags;