On Wed, Aug 20, 2008 at 10:18:30AM +0200, Dag-Erling Sm??rgrav wrote: > Ruslan Ermilov <ru_at_freebsd.org> writes: > > "-mtime -0" interacts badly with the TIME_CORRECT() macro when mtime > > and run-time happen to be the same second. While I think it's a bug > > in the find(1) code that needs to be fixed, using "-mtime -0s" seems > > to avoid the macro and thus works as expected. > -mtime -0s (note the minus before "0s"). > % date ; touch foo ; find foo -mtime 0s ; date ; sleep 1 ; find foo -mtime 0s ; date > Wed Aug 20 10:09:11 CEST 2008 > foo > Wed Aug 20 10:09:11 CEST 2008 > Wed Aug 20 10:09:12 CEST 2008 > % date ; touch foo ; find foo -mtime 0s ; date ; sleep 1 ; find foo -mtime 1s ; date > Wed Aug 20 10:11:23 CEST 2008 > foo > Wed Aug 20 10:11:23 CEST 2008 > foo > Wed Aug 20 10:11:24 CEST 2008 > > '-mtime Ns' evaluates to true if the difference between current time and > the file's mtime is *exactly* N seconds. > > '-mtime N' evaluates to true if the difference between current time and > the file's mtime is between N-1 and N days. > > As written, the test will fail if sys/sys/param.h's mtime is between now > and 86399 seconds into the future, and succeed otherwise. If we change > 0 to 0s, it will fail if sys/sys/param.h's mtime is exactly the current > time, and succeed otherwise. > > Personally, I think the test is useless, as there are a million other > ways to mess up your build, but if you absolutely must have it there, > the correct predicate would be '-newermt now'. > > DES > -- > Dag-Erling Sm??rgrav - des_at_des.no > -- Ruslan Ermilov ru_at_FreeBSD.org FreeBSD committerReceived on Wed Aug 20 2008 - 12:54:42 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:34 UTC