Implement special $BadClus:$Bad handling

edge.strict_endians
szaka 2006-04-05 02:56:52 +00:00
parent 6873bab2f1
commit 45bccaf546
2 changed files with 8 additions and 5 deletions

View File

@ -52,7 +52,6 @@ Thanks,
- more exact details about the differences
- unnamed resident attributes with same type are ignored
- special $BadClus:$Bad handling, now $BadClus is skipped
- new option: --metadata mode
- code cleanup, remove many cross-util duplicates
- write manual

View File

@ -567,6 +567,14 @@ static void cmp_attribute(ntfs_attr_search_ctx *ctx1,
goto close_attribs;
}
if (ntfs_inode_badclus_bad(inumber(ctx1->ntfs_ino), ctx1->attr) == 1) {
/*
* If difference exists then it's already reported at the
* attribute header since the mapping pairs must differ.
*/
return;
}
cmp_attribute_data(na1, na2);
close_attribs:
@ -775,10 +783,6 @@ static int cmp_inodes(ntfs_volume *vol1, ntfs_volume *vol2)
for (inode = 0; inode < nr_mft_records; inode++) {
/* FIXME: needs special handling */
if (inode == 8)
continue;
ret1 = inode_open(vol1, (MFT_REF)inode, &ni1);
ret2 = inode_open(vol2, (MFT_REF)inode, &ni2);