case 'f':
if (st)
{
- base = base_name (st->orig_file_name);
+ base = last_component (st->orig_file_name);
len += strlen (base) - 2;
}
break;
if (size != p)
{
ERROR ((0, 0,
- _("Generated keyword/value pair is too long (keyword=%s, length=%s"),
+ _("Generated keyword/value pair is too long (keyword=%s, length=%s)"),
keyword, nbuf));
obstack_free (extended_header.stk, obstack_finish (extended_header.stk));
return false;
static void
mtime_coder (struct tar_stat_info const *st, char const *keyword,
- struct xheader *xhdr, void const *data __attribute__ ((unused)))
+ struct xheader *xhdr, void const *data)
{
- code_time (st->mtime, keyword, xhdr);
+ const struct timespec mtime = data ? *(struct timespec *) data : st->mtime;
+ code_time (mtime, keyword, xhdr);
}
static void