while (1)
{
prev_status = status;
- status = read_header (0);
+ status = read_header (false);
switch (status)
{
case HEADER_STILL_UNREAD:
+ case HEADER_SUCCESS_EXTENDED:
abort ();
case HEADER_SUCCESS:
case HEADER_FAILURE:
/* We are in the middle of a cascade of errors. */
break;
+
+ case HEADER_SUCCESS_EXTENDED:
+ abort ();
}
continue;
}
{
/* Print the header block. */
+ decode_header (current_header, ¤t_stat_info, ¤t_format, 0);
if (verbose_option)
- {
- if (verbose_option > 1)
- decode_header (current_header, ¤t_stat_info, ¤t_format, 0);
- print_header (-1);
- }
+ print_header (-1);
if (incremental_option && current_header->header.typeflag == GNUTYPE_DUMPDIR)
{
}
}
- if (extended_header.nblocks)
+ if (extended_header.size)
xheader_decode (stat_info);
}
/* User and group names. */
- if (*current_header->header.uname && current_format != V7_FORMAT
+ if (current_stat_info.uname && current_format != V7_FORMAT
&& !numeric_owner_option)
- user = current_header->header.uname;
+ user = current_stat_info.uname;
else
{
/* Try parsing it as an unsigned integer first, and as a
}
}
- if (*current_header->header.gname && current_format != V7_FORMAT
+ if (current_stat_info.gname && current_format != V7_FORMAT
&& !numeric_owner_option)
- group = current_header->header.gname;
+ group = current_stat_info.gname;
else
{
/* Try parsing it as an unsigned integer first, and as a