diff options
| author | Julian Hurst <ark@mansus.space> | 2024-10-21 13:22:55 +0200 |
|---|---|---|
| committer | Julian Hurst <ark@mansus.space> | 2024-10-21 13:22:58 +0200 |
| commit | 951a1d7c777902c3d93c0629c5940ac25f827f62 (patch) | |
| tree | c93ec875630fbac60130e24ca2f2ffb97a4e7a1d /distamp.ha | |
| parent | f483ec5cc73dde773937f604afcd7705afe66192 (diff) | |
| download | distamp-951a1d7c777902c3d93c0629c5940ac25f827f62.tar.gz | |
Use Europe/Paris tz instead of LOCAL
LOCAL isn't Europe/Paris but UTC here for some reason
Diffstat (limited to 'distamp.ha')
| -rw-r--r-- | distamp.ha | 10 |
1 files changed, 6 insertions, 4 deletions
@@ -28,6 +28,8 @@ export fn main() void = { case let i: i64 => printdistamp(i); return; + case let e: chrono::tzdberror => + fmt::fatal(chrono::strerror(e)); case let e: date::parsefail => let s = strings::concat(date::strerror(e), "\n", "Date format must be 'year-month-day hour:minute:second'"); defer free(s); @@ -75,13 +77,13 @@ fn printdistamp(i: i64) void = { fmt::printfln("<t:{}:R>", i)!; }; -fn abs(s: str) (i64 | date::error) = { +fn abs(s: str) (i64 | date::error | chrono::tzdberror) = { let v = date::newvirtual(); - v.vloc = chrono::LOCAL; + v.vloc = chrono::tz("Europe/Paris")?; v.zoff = date::zflag::LAP_EARLY | date::zflag::GAP_END; - date::parse(&v, "%Y-%m-%d %T", s)!; + date::parse(&v, "%Y-%m-%d %T", s)?; v.nanosecond = 0; - let d = date::realize(v, chrono::LOCAL)!; + let d = date::realize(v, chrono::LOCAL)?; //date::format(os::stderr, "%Y-%m-%d %T %L", &d)!; return time::unix(*(&d: *time::instant)); }; |
