if (lte->resource_entry.offset +
lte->resource_entry.size > args->end_offset)
{
- #ifdef ENABLE_ERROR_MESSAGES
- ERROR("The following resource is after the XML data:");
- print_lookup_table_entry(lte, stderr);
- #endif
+ if (wimlib_print_errors) {
+ ERROR("The following resource is after the XML data:");
+ print_lookup_table_entry(lte, stderr);
+ }
return WIMLIB_ERR_RESOURCE_ORDER;
}
copy_resource_entry(<e->output_resource_entry,
unsigned num_threads,
wimlib_progress_func_t progress_func)
{
+ int ret;
+
write_flags &= WIMLIB_WRITE_MASK_PUBLIC;
if (!w->filename)
return WIMLIB_ERR_NO_FILENAME;
- if (w->hdr.total_parts != 1) {
- ERROR("Cannot modify a split WIM");
- return WIMLIB_ERR_SPLIT_UNSUPPORTED;
- }
+ ret = can_modify_wim(w);
+ if (ret)
+ return ret;
if ((!w->deletion_occurred || (write_flags & WIMLIB_WRITE_FLAG_SOFT_DELETE))
&& !(write_flags & WIMLIB_WRITE_FLAG_REBUILD))