On Thu, Aug 18, 2011 at 10:28, Paul Eggert
<address@hidden> wrote:
On 08/18/2011 09:46 AM, Kevin Brott wrote:
> Looks like tar isn't putting anything but zero-byte files into the archives
Thanks for the truss output. I expect that it's this line
in src/create.c:1639
else if (fstatat (parentfd, name, &st->stat, fstatat_flags) != 0)
Could you please run a debugger like GDB and step through that line
with an offending test case? My suspicion is that fstatat is incorrectly
reporting that the file size is zero. If so, can you explain how fstatat
is implemented on your system? Is the code using the gnulib replacement,
or is fstatat implemented via system's C library, or what?
If you can't run a debugger, simply insert some printf statements
and print st->stat.st_size right after the successful fstatat.