sbase

suckless unix tools
git clone git://git.2f30.org/sbase
Log | Files | Refs | README | LICENSE

commit 1b41610a820215cdc569129e1cada5c6267fcecb
parent 772a40188bf1c8a2612ac13967bad94228c561a4
Author: Michael Forney <mforney@mforney.org>
Date:   Sun,  3 Sep 2017 11:39:12 -0700

date: Just set TZ to handle -u flag

This simplifies things a tiny bit, and is also necessary for setting the
date since mktime operates based on the value of TZ.

Diffstat:
Mdate.c | 11+++++------
1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/date.c b/date.c @@ -15,9 +15,8 @@ int main(int argc, char *argv[]) { struct tm *now; - struct tm *(*tztime)(const time_t *) = localtime; time_t t; - char buf[BUFSIZ], *fmt = "%c", *tz = "local"; + char buf[BUFSIZ], *fmt = "%c"; t = time(NULL); @@ -26,8 +25,8 @@ main(int argc, char *argv[]) t = estrtonum(EARGF(usage()), 0, LLONG_MAX); break; case 'u': - tztime = gmtime; - tz = "gm"; + if (setenv("TZ", "UTC0", 1) < 0) + eprintf("setenv:"); break; default: usage(); @@ -39,8 +38,8 @@ main(int argc, char *argv[]) else fmt = &argv[0][1]; } - if (!(now = tztime(&t))) - eprintf("%stime failed\n", tz); + if (!(now = localtime(&t))) + eprintf("localtime:"); strftime(buf, sizeof(buf), fmt, now); puts(buf);