hwclock: make commented-out code compilable
authorDenys Vlasenko <vda.linux@googlemail.com>
Thu, 7 Jan 2010 09:36:41 +0000 (10:36 +0100)
committerDenys Vlasenko <vda.linux@googlemail.com>
Thu, 7 Jan 2010 09:36:41 +0000 (10:36 +0100)
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
util-linux/hwclock.c

index 7f4c563e6ec9924353ad0e2aecf34c88b46501b1..a8b0bdf935a77feca113e23ef7d11a6f97a2032e 100644 (file)
  * "time between hwclock was started and we saw CMOS tick" quantity.
  * It's useless since hwclock is started at a random moment,
  * thus the quantity is also random, useless. Showing 0.000000 does not
- * deprive us from any useful info. */
+ * deprive us from any useful info.
+ *
+ * SHOW_HWCLOCK_DIFF code in this file shows the difference between system
+ * and hw clock. It is useful, but not compatible with standard hwclock.
+ * Thus disabled.
+ */
 #define SHOW_HWCLOCK_DIFF 0
 
 
@@ -40,13 +45,14 @@ static time_t read_rtc(const char **pp_rtcname, struct timeval *sys_tv, int utc)
        rtc_read_tm(&tm, fd);
 
 #if SHOW_HWCLOCK_DIFF
-       int before;
-       before = tm.tm_sec;
-       while (1) {
-               rtc_read_tm(&tm, fd);
-               gettimeofday(sys_tv, NULL);
-               if (before != tm.tm_sec)
-                       break;
+       {
+               int before = tm.tm_sec;
+               while (1) {
+                       rtc_read_tm(&tm, fd);
+                       gettimeofday(sys_tv, NULL);
+                       if (before != tm.tm_sec)
+                               break;
+               }
        }
 #endif
 
@@ -58,29 +64,32 @@ static time_t read_rtc(const char **pp_rtcname, struct timeval *sys_tv, int utc)
 
 static void show_clock(const char **pp_rtcname, int utc)
 {
+#if SHOW_HWCLOCK_DIFF
+       struct timeval sys_tv;
+#endif
        time_t t;
        char *cp;
 
        t = read_rtc(pp_rtcname, &sys_tv, utc);
        cp = ctime(&t);
        strchrnul(cp, '\n')[0] = '\0';
+#if !SHOW_HWCLOCK_DIFF
        printf("%s  0.000000 seconds\n", cp);
-
-#if SHOW_HWCLOCK_DIFF
-       struct timeval sys_tv;
-       long diff;
-       diff = sys_tv.tv_sec - t;
-       if (diff < 0 /*&& tv.tv_usec != 0*/) {
-               /* Why? */
-               /* diff >= 0 is ok:   diff < 0, can't just use tv.tv_usec: */
-               /*   45.520820          43.520820 */
-               /* - 44.000000        - 45.000000 */
-               /* =  0.520820        = -1.479180, not -2.520820! */
-               diff++;
-               /* should be 1000000 - tv.tv_usec, but then we must check tv.tv_usec != 0 */
-               sys_tv.tv_usec = 999999 - sys_tv.tv_usec;
+#else
+       {
+               long diff = sys_tv.tv_sec - t;
+               if (diff < 0 /*&& tv.tv_usec != 0*/) {
+                       /* Why? */
+                       /* diff >= 0 is ok:   diff < 0, can't just use tv.tv_usec: */
+                       /*   45.520820          43.520820 */
+                       /* - 44.000000        - 45.000000 */
+                       /* =  0.520820        = -1.479180, not -2.520820! */
+                       diff++;
+                       /* should be 1000000 - tv.tv_usec, but then we must check tv.tv_usec != 0 */
+                       sys_tv.tv_usec = 999999 - sys_tv.tv_usec;
+               }
+               printf("%s  %ld.%06lu seconds\n", cp, diff, (unsigned long)sys_tv.tv_usec);
        }
-       printf("%s  %ld.%06lu seconds\n", cp, diff, (unsigned long)sys_tv.tv_usec);
 #endif
 }