]> Savannah Git Hosting - gnulib.git/commitdiff
parse-datetime: fix debug message of relative part after timezone
authorAssaf Gordon <assafgordon@gmail.com>
Thu, 5 Jan 2017 04:07:12 +0000 (23:07 -0500)
committerAssaf Gordon <assafgordon@gmail.com>
Thu, 5 Jan 2017 05:08:06 +0000 (00:08 -0500)
Relative part (e.g '+8 days') after a timezone string was not reported
(was only reported after a timezone number). Due to the parser's structure,
timezone strings with numbers were handled separately.

before:
     # Timezone number + relative part: OK
     $ ./src/date --debug +%F -d '2013-10-30 00:00:00 +00:00 -8 days'
     ...
     date: parsed relative part: -8 day(s)

     # Timezone string + relative part: missing
     $ ./src/date --debug +%F -d '2013-10-30 00:00:00 UTC -8 days'
     [ missing message ]

After: messages are printed in both cases.

* lib/parse-datetime.y ('zone' token): Call debug_print_relative_time.

ChangeLog
lib/parse-datetime.y

index 45af1d81438acf38bb31df69bd2a66877a774b6c..7b2cb1de6e7b07957a3776b58e0effca72ea7c17 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,21 @@
 2017-01-04  Assaf Gordon <assafgordon@gmail.com>
 
+       parse-datetime: fix debug message of relative part after timezone
+       Relative part (e.g '+8 days') after a timezone string was not
+       reported (was only reported after a timezone number). Due to the
+       parser's structure, timezone strings with numbers were handled
+       separately.
+       before:
+            # Timezone number + relative part: OK
+            $ ./src/date --debug +%F -d '2013-10-30 00:00:00 +00:00 -8 days'
+            ...
+            date: parsed relative part: -8 day(s)
+            # Timezone string + relative part: missing
+            $ ./src/date --debug +%F -d '2013-10-30 00:00:00 UTC -8 days'
+            [ missing message ]
+       After: messages are printed in both cases.
+       * lib/parse-datetime.y ('zone' token): Call debug_print_relative_time.
+
        parse-datetime: fix incorrect debug message on lone number
        A lone number is an absolute value, not a relative time part.
        before:
index 58e817f13b9088ff8a4ae587ccf3c4468d887e1b..719611323212dce95dbe99f203af310708727eb1 100644 (file)
@@ -707,10 +707,14 @@ zone:
       { pc->time_zone = HOUR(7); }
   | tZONE relunit_snumber
       { pc->time_zone = $1;
-        apply_relative_time (pc, $2, 1); }
+        apply_relative_time (pc, $2, 1);
+        debug_print_relative_time (_("relative"), pc);
+      }
   | 'T' relunit_snumber
       { pc->time_zone = HOUR(7);
-        apply_relative_time (pc, $2, 1); }
+        apply_relative_time (pc, $2, 1);
+        debug_print_relative_time (_("relative"), pc);
+      }
   | tZONE tSNUMBER o_colon_minutes
       { pc->time_zone = $1 + time_zone_hhmm (pc, $2, $3); }
   | tDAYZONE