bug-coreutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#26783: Discrepancy with uptime added as part of "[PATCH] Document up


From: Prateek saxena
Subject: bug#26783: Discrepancy with uptime added as part of "[PATCH] Document uptime."
Date: Fri, 5 May 2017 11:33:14 +0530

Hi,

We found some discrepancy with uptime utility of coreutils package.

In my system using coreutils package with version 8.26, uptime output prints
PM/AM for 24 hour time format.

Logs:
------------------------------------------------------------------------------------
# uptime
 17:19pm  up 6 days 10:02,  1 user,  load average: 0.18, 0.14, 0.10

# uptime --version
uptime (GNU coreutils) 8.26
Copyright (C) 2016 Free Software Foundation, Inc.

License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html
>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Written by Joseph Arceneaux, David MacKenzie, and Kaveh Ghazi
------------------------------------------------------------------------------------

The time is in 24 hours format and PM is not expected to be printed.
We can see latest patch for uptime utility, use of fprintftime to print the
time
 (http://lists.gnu.org/archive/html/bug-coreutils/2008-08/msg00035.html).

------------------------------------------------------------------------------------
diff --git a/src/uptime.c b/src/uptime.c
index 9e3384f..5bdc230 100644
--- a/src/uptime.c
+++ b/src/uptime.c
@@ -36,6 +36,7 @@
 #include "long-options.h"
 #include "quote.h"
 #include "readutmp.h"
+#include "fprintftime.h"

 /* The official name of this program (e.g., no `g' prefix).  */
 #define PROGRAM_NAME "uptime"
@@ -126,12 +127,10 @@ print_uptime (size_t n, const STRUCT_UTMP *this)
   uphours = (uptime - (updays * 86400)) / 3600;
   upmins = (uptime - (updays * 86400) - (uphours * 3600)) / 60;
   tmn = localtime (&time_now);
+  /* procps' version of uptime also prints the seconds field, but
+     previous versions of coreutils don't. */
   if (tmn)
-    printf (_(" %2d:%02d%s  up "),
-           ((tmn->tm_hour % 12) == 0 ? 12 : tmn->tm_hour % 12),
-           /* FIXME: use strftime, not am, pm.  Uli reports that
-              the german translation is meaningless.  */
-           tmn->tm_min, (tmn->tm_hour < 12 ? _("am") : _("pm")));
+    fprintftime (stdout, _(" %H:%M%P  up "), tmn, 0, 0);
   else
     printf (_(" ??:????  up "));
   if (uptime == (time_t) -1)
-----------------------------------------------------------------------------------

Can you please verify whether PM/AM should be avoided from uptime print.

Please find attach patch to remove AM/PM from the print for your reference.

Please provide your inputs for same.

Thanks & Regards,
Prateek

Attachment: 0001-uptime_am_pm_print_remove.patch
Description: Binary data


reply via email to

[Prev in Thread] Current Thread [Next in Thread]