X-Git-Url: https://wimlib.net/git/?p=wimlib;a=blobdiff_plain;f=src%2Fxml.c;h=a6e745aaf3f09405975077dc880f720b977331ff;hp=da47b28ea3815841e386f6545dd10578d01154ca;hb=161d3898359e3feb8c96ae220b376ef33c72a1d6;hpb=de13ae97db3acfc2423a69035eecb24d64a48870 diff --git a/src/xml.c b/src/xml.c index da47b28e..a6e745aa 100644 --- a/src/xml.c +++ b/src/xml.c @@ -78,6 +78,7 @@ struct image_info { tchar *display_name; tchar *display_description; tchar *flags; + struct wim_lookup_table *lookup_table; /* temporary field */ }; struct xml_string_spec { @@ -1078,7 +1079,7 @@ calculate_dentry_statistics(struct wim_dentry *dentry, void *arg) * link bytes", and this size is multiplied by the link count (NOT one * less than the link count). */ - lte = inode_unnamed_lte_resolved(inode); + lte = inode_unnamed_lte(inode, info->lookup_table); if (lte) { info->total_bytes += wim_resource_size(lte); if (!dentry_is_first_in_inode(dentry)) @@ -1088,7 +1089,7 @@ calculate_dentry_statistics(struct wim_dentry *dentry, void *arg) if (inode->i_nlink >= 2 && dentry_is_first_in_inode(dentry)) { for (unsigned i = 0; i < inode->i_num_ads; i++) { if (inode->i_ads_entries[i].stream_name_nbytes) { - lte = inode_stream_lte_resolved(inode, i + 1); + lte = inode_stream_lte(inode, i + 1, info->lookup_table); if (lte) { info->hard_link_bytes += inode->i_nlink * wim_resource_size(lte); @@ -1119,6 +1120,7 @@ xml_update_image_info(WIMStruct *w, int image) image_info->dir_count = 0; image_info->total_bytes = 0; image_info->hard_link_bytes = 0; + image_info->lookup_table = w->lookup_table; for_dentry_in_tree(w->image_metadata[image - 1]->root_dentry, calculate_dentry_statistics,