On 03/03/19 23:12, Bernhard Voelker wrote: > On 3/4/19 6:20 AM, Pádraig Brady wrote: >> I'll push this now. > > Sorry, a bit late: > > $ make sc_space_before_open_paren > space_before_open_paren > ? statx(AT_FDCWD, filename, > : statx(fd, "", AT_EMPTY_PATH, STATX_BTIME, &stx)) == 0) > *** src/stat.c > maint.mk: the above files lack a space-before-open-paren
Fixed. > And a little question: > > +#if HAVE_STATX > + if (ts.tv_nsec < 0) > + { > + struct statx stx; > + if ((fd < 0 > + ? statx(AT_FDCWD, filename, > + follow_links ? 0 : AT_SYMLINK_NOFOLLOW, > + STATX_BTIME, &stx) > + : statx(fd, "", AT_EMPTY_PATH, STATX_BTIME, &stx)) == 0) > + { > + if ((stx.stx_mask & STATX_BTIME) && stx.stx_btime.tv_sec != 0) > ____________________________________________^^^^^^^^^^^^^^^^^^^^^^^^^^^^ > > Why do we need this extra check? As I read 'man statx', the test on the > stx_mask > should be enough. And - highly unlikely -: if the BTIME is in the first > second > after epoch, then TV_SEC will be 0 while TV_NSEC might not. > > Otherwise: nice feature, thanks! I would have just used the mask, though searching I see that systemd also checks tv_sec. So I'm thinking perhaps on some kernels/file systems this is left at zero, without setting the mask. Also this feature wasn't available in 1970 :), so I thought it safer to keep that check. thanks for the review, Pádraig