diff options
author | Ori Bernstein <ori@eigenstate.org> | 2020-09-26 11:20:42 -0700 |
---|---|---|
committer | Ori Bernstein <ori@eigenstate.org> | 2020-09-26 11:20:42 -0700 |
commit | d9f9e10e7b3ad61342ec1d9b034dd17f8452ccbc (patch) | |
tree | 3a0b155a8b2273cfe41110fe0a15ce50d6eb1e4f /sys/src/cmd/upas/fs | |
parent | 9afa5550f7497f84fb157ba07ff94301dbe06bcc (diff) |
upas: convert to tmdate, change timezone format
Complete the conversion of upas to remove ctime,
use the new date library, and print time zones
in +hhmm format, instead of NNN format.
This may affect code that expects specific names
for timezones. Fix that code.
Diffstat (limited to 'sys/src/cmd/upas/fs')
-rw-r--r-- | sys/src/cmd/upas/fs/extra/strtotmtst.c | 3 | ||||
-rw-r--r-- | sys/src/cmd/upas/fs/fs.c | 8 | ||||
-rw-r--r-- | sys/src/cmd/upas/fs/mbox.c | 6 | ||||
-rw-r--r-- | sys/src/cmd/upas/fs/plan9.c | 2 |
4 files changed, 10 insertions, 9 deletions
diff --git a/sys/src/cmd/upas/fs/extra/strtotmtst.c b/sys/src/cmd/upas/fs/extra/strtotmtst.c index 074e10e2c..fa448519c 100644 --- a/sys/src/cmd/upas/fs/extra/strtotmtst.c +++ b/sys/src/cmd/upas/fs/extra/strtotmtst.c @@ -8,9 +8,10 @@ main(int argc, char **argv) ARGBEGIN{ }ARGEND + tmfmtinstall(); for(; *argv; argv++) if(strtotm(*argv, &tm) >= 0) - print("%s", asctime(&tm)); + print("%τ\n", tmfmt(&tm, nil)); else print("bad\n"); exits(""); diff --git a/sys/src/cmd/upas/fs/fs.c b/sys/src/cmd/upas/fs/fs.c index ae9180387..9ce9399c6 100644 --- a/sys/src/cmd/upas/fs/fs.c +++ b/sys/src/cmd/upas/fs/fs.c @@ -174,16 +174,15 @@ Afmt(Fmt *f) static int Δfmt(Fmt *f) { - char buf[32]; uvlong v; + Tm tm; v = va_arg(f->args, uvlong); if(f->flags & FmtSharp) if((v>>8) == 0) return fmtstrcpy(f, ""); - strcpy(buf, ctime(v>>8)); - buf[28] = 0; - return fmtstrcpy(f, buf); + tmtime(&tm, v>>8, tzload("local")); + return fmtprint(f, "%τ", tmfmt(&tm, "WW MMM _D hh:mm:ss Z YYYY")); } static int @@ -320,6 +319,7 @@ main(int argc, char *argv[]) fmtinstall(L'Δ', Δfmt); fmtinstall('F', fcallfmt); fmtinstall('H', encodefmt); /* forces tls stuff */ + tmfmtinstall(); quotefmtinstall(); if(pipe(p) < 0) error("pipe failed"); diff --git a/sys/src/cmd/upas/fs/mbox.c b/sys/src/cmd/upas/fs/mbox.c index 84d892b49..7baa73860 100644 --- a/sys/src/cmd/upas/fs/mbox.c +++ b/sys/src/cmd/upas/fs/mbox.c @@ -366,11 +366,11 @@ datesec(Mailbox *mb, Message *m) if(m->fileid > 1000000ull<<8) return; if(m->unixdate && strtotm(m->unixdate, &tm) >= 0) - v = tm2sec(&tm); + v = tmnorm(&tm); else if(m->date822 && strtotm(m->date822, &tm) >= 0) - v = tm2sec(&tm); + v = tmnorm(&tm); else if(rxtotm(m, &tm) >= 0) - v = tm2sec(&tm); + v = tmnorm(&tm); else{ logmsg(gettopmsg(mb, m), "%s:%s: datasec %s %s\n", mb->path, m->whole? m->whole->name: "?", diff --git a/sys/src/cmd/upas/fs/plan9.c b/sys/src/cmd/upas/fs/plan9.c index 2c793b40a..11fe1223a 100644 --- a/sys/src/cmd/upas/fs/plan9.c +++ b/sys/src/cmd/upas/fs/plan9.c @@ -34,7 +34,7 @@ chkunix0(char *s, int n) return -1; if(memtotm(p, n - (p - s), &tm) < 0) return -1; - if(tm2sec(&tm) < 1000000) + if(tmnorm(&tm) < 1000000) return -1; return 0; } |