]> wimlib.net Git - wimlib/blobdiff - src/metadata_resource.c
wim_recalculate_refcnts(): Check for error
[wimlib] / src / metadata_resource.c
index e632198940f332928b2e543b78e55e7fd8aa6d77..5ee296642fb70651b5a9c609d8571099bb968d40 100644 (file)
@@ -246,7 +246,7 @@ prepare_metadata_resource(WIMStruct *wim, int image,
         */
        recalculate_security_data_length(sd);
        subdir_offset = (((u64)sd->total_length + 7) & ~7) +
-                       dentry_correct_total_length(root) + 8;
+                       dentry_out_total_length(root) + 8;
 
        /* Calculate the subdirectory offsets for the entire dentry tree.  */
        calculate_subdir_offsets(root, &subdir_offset);
@@ -296,10 +296,12 @@ write_metadata_resource(WIMStruct *wim, int image, int write_resource_flags)
         * the metadata resource.  */
        ret = write_wim_resource_from_buffer(buf, len, WIM_RESHDR_FLAG_METADATA,
                                             &wim->out_fd,
-                                            wim->compression_type,
+                                            wim->out_compression_type,
+                                            wim->out_chunk_size,
                                             &imd->metadata_lte->output_resource_entry,
                                             imd->metadata_lte->hash,
-                                            write_resource_flags);
+                                            write_resource_flags,
+                                            &wim->lzx_context);
 
        /* Original checksum was overridden; set a flag so it isn't used.  */
        imd->metadata_lte->dont_check_metadata_hash = 1;