X-Git-Url: https://wimlib.net/git/?a=blobdiff_plain;f=src%2Fverify.c;h=9e59d707feebb8d417fc9a2603d7c8788be70d8a;hb=0bfcb6ff6c9b07acb5ea16a22b5e24eb36b3609b;hp=f85446a7db2bf3e85a6b21c10d75ec6c4829cc33;hpb=0fcd5cc81145bc736e815aee321fd736277c0846;p=wimlib diff --git a/src/verify.c b/src/verify.c index f85446a7..9e59d707 100644 --- a/src/verify.c +++ b/src/verify.c @@ -85,9 +85,8 @@ verify_inode(struct wim_inode *inode, const WIMStruct *w) num_unnamed_streams++; } if (num_unnamed_streams > 1) { - ERROR("Dentry `%"TS"' has multiple (%u) un-named streams", - dentry_full_path(first_dentry), num_unnamed_streams); - return WIMLIB_ERR_INVALID_DENTRY; + WARNING("\"%"TS"\" has multiple (%u) un-named streams", + dentry_full_path(first_dentry), num_unnamed_streams); } /* Files cannot have multiple DOS names, even if they have multiple @@ -115,13 +114,6 @@ verify_inode(struct wim_inode *inode, const WIMStruct *w) } } - /* Directories with multiple links have not been tested. XXX */ - if (inode->i_nlink > 1 && inode->i_attributes & FILE_ATTRIBUTE_DIRECTORY) { - ERROR("Hard-linked directory `%"TS"' is unsupported", - dentry_full_path(first_dentry)); - return WIMLIB_ERR_INVALID_DENTRY; - } - inode->i_verified = 1; return 0; } @@ -151,8 +143,13 @@ verify_dentry(struct wim_dentry *dentry, void *wim) * (This seems to be the case...) */ if (dentry_is_root(dentry)) { if (dentry_has_long_name(dentry) || dentry_has_short_name(dentry)) { - ERROR("The root dentry has a nonempty name!"); - return WIMLIB_ERR_INVALID_DENTRY; + WARNING("The root dentry has a nonempty name"); + FREE(dentry->file_name); + FREE(dentry->short_name); + dentry->file_name = NULL; + dentry->short_name = NULL; + dentry->file_name_nbytes = 0; + dentry->short_name_nbytes = 0; } } else { if (!dentry_has_long_name(dentry)) {