X-Git-Url: https://git.madduck.net/etc/awesome.git/blobdiff_plain/30d7af10d208006ea09f32bd006c2cb2556a36ac..ac89c4c58d68776dfec1a54c19077a58f1eb76c6:/luatz/parse.lua diff --git a/luatz/parse.lua b/luatz/parse.lua index 2c5f8d3..0bfd820 100644 --- a/luatz/parse.lua +++ b/luatz/parse.lua @@ -8,7 +8,7 @@ local new_timetable = require "luatz.timetable".new local function rfc_3339 ( str , init ) local year , month , day , hour , min , sec , patt_end = str:match ( "^(%d%d%d%d)%-(%d%d)%-(%d%d)[Tt](%d%d%.?%d*):(%d%d):(%d%d)()" , init ) if not year then - error ( "Invalid RFC 3339 timestamp" ) + return nil, "Invalid RFC 3339 timestamp" end year = tonumber ( year ) month = tonumber ( month ) @@ -17,7 +17,7 @@ local function rfc_3339 ( str , init ) min = tonumber ( min ) sec = tonumber ( sec ) - local tt = new_timetable ( year , month , day , hour , min , sec ) + local tt = new_timetable ( year , month , day , hour , min , sec ) local tz_offset if str:match ("^[Zz]" , patt_end ) then @@ -25,9 +25,9 @@ local function rfc_3339 ( str , init ) else local hour_offset , min_offset = str:match ( "^([+-]%d%d):(%d%d)" , patt_end ) if hour_offset then - tz_offset = tonumber ( hour_offset )*60 + tonumber ( min_offset ) - else - -- Invalid RFC 3339 timestamp offset (should be Z or (+/-)hour:min + tz_offset = tonumber ( hour_offset ) * 3600 + tonumber ( min_offset ) * 60 + else -- luacheck: ignore 542 + -- Invalid RFC 3339 timestamp offset (should be Z or (+/-)hour:min) -- tz_offset will be nil end end