]> wimlib.net Git - wimlib/blobdiff - src/dentry.h
do_overlay(): Do overlays recursively
[wimlib] / src / dentry.h
index 5f7ccd5b6cf886837a5c7cf5b5d692198f5216ce..9ff234d5b41d66c187bff87651a959b473fd08ed 100644 (file)
@@ -231,9 +231,14 @@ struct wim_inode {
        /* Used only in NTFS-mode extraction */
        u8 i_dos_name_extracted : 1;
 
+       u16 i_not_rpfixed;
+
        /* Number of alternate data streams associated with this inode */
        u16 i_num_ads;
 
+       u16 i_rp_unknown_2;
+       u32 i_rp_unknown_1;
+
        /* A hash of the file's contents, or a pointer to the lookup table entry
         * for this dentry if the lookup table entries have been resolved.
         *
@@ -372,6 +377,9 @@ print_dentry(struct wim_dentry *dentry, void *lookup_table);
 extern int
 print_dentry_full_path(struct wim_dentry *entry, void *ignore);
 
+extern int
+calculate_dentry_tree_full_paths(struct wim_dentry *root);
+
 extern tchar *
 dentry_full_path(struct wim_dentry *dentry);
 
@@ -403,7 +411,7 @@ free_dentry_tree(struct wim_dentry *root,
 extern void
 unlink_dentry(struct wim_dentry *dentry);
 
-extern bool
+extern struct wim_dentry *
 dentry_add_child(struct wim_dentry * restrict parent,
                 struct wim_dentry * restrict child);
 
@@ -500,8 +508,8 @@ static inline bool
 inode_is_symlink(const struct wim_inode *inode)
 {
        return (inode->i_attributes & FILE_ATTRIBUTE_REPARSE_POINT)
-               && ((inode->i_reparse_tag == WIM_IO_REPARSE_TAG_SYMLINK) ||
-                    inode->i_reparse_tag == WIM_IO_REPARSE_TAG_MOUNT_POINT);
+               && (inode->i_reparse_tag == WIM_IO_REPARSE_TAG_SYMLINK ||
+                   inode->i_reparse_tag == WIM_IO_REPARSE_TAG_MOUNT_POINT);
 }
 
 static inline bool