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.
