if read_header returns HEADER_FAILURE
Destroy and reinitialize content of current_stat_info and
extended_header after each iteration.
Issue a warning if the archive created contains some members
whose file names were stripped off their leading prefixes.
This is a temporary fix of the issue reported by Bdale Garbee
<bdale@gag.com> (Refs: Debian bug 230064, Message-Id
<87n07kyzhi.fsf@rover.gag.com>, Sun, 15 Feb 2004 11:22:17 -0700)
void
verify_volume (void)
{
+ if (removed_prefixes_p ())
+ {
+ WARN((0, 0,
+ _("Archive contains file names with leading prefixes removed.")));
+ WARN((0, 0,
+ _("Verification may fail to locate original files.")));
+ }
+
if (!diff_buffer)
diff_init ();
do
{
counter++;
+ set_next_block_after (current_header);
status = read_header (false);
}
while (status == HEADER_FAILURE);
break;
diff_archive ();
+ tar_stat_destroy (¤t_stat_info);
+ xheader_destroy (&extended_header);
}
access_mode = ACCESS_WRITE;