For mod times farther in the future, print the value in fixed-point rather

than exponential notation (patch from Bruno Haible).
This commit is contained in:
Paul Smith 2007-11-05 14:15:19 +00:00
parent 43d81ff866
commit 8025f93312
3 changed files with 14 additions and 2 deletions

View file

@ -60,6 +60,7 @@ Other contributors:
Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
Carl Staelin (Princeton University)
Ian Stewartson (Data Logic Limited)
Ramon Garcia Fernandez <ramon.garcia.f@gmail.com>
With suggestions/comments/bug reports from a cast of ... well ...
hundreds, anyway :)

View file

@ -6,6 +6,11 @@
* commands.c, file.c, job.c, remake.c, read.c, variable.c, main.c:
Ditto.
2007-10-27 Bruno Haible <bruno@clisp.org>
* remake.c (f_mtime): Print time difference values between 100 and
ULONG_MAX in fixed-point notation rather than in exponention notation.
2007-10-12 Eli Zaretskii <eliz@gnu.org>
* variable.c (do_variable_definition): Allow $(SHELL) to expand to

View file

@ -1302,8 +1302,14 @@ f_mtime (struct file *file, int search)
(FILE_TIMESTAMP_S (mtime) - FILE_TIMESTAMP_S (now)
+ ((FILE_TIMESTAMP_NS (mtime) - FILE_TIMESTAMP_NS (now))
/ 1e9));
error (NILF, _("Warning: File `%s' has modification time %.2g s in the future"),
file->name, from_now);
char from_now_string[100];
if (from_now >= 99 && from_now <= ULONG_MAX)
sprintf (from_now_string, "%lu", (unsigned long) from_now);
else
sprintf (from_now_string, "%.2g", from_now);
error (NILF, _("Warning: File `%s' has modification time %s s in the future"),
file->name, from_now_string);
#endif
clock_skew_detected = 1;
}