logo

oasis

Own branch of Oasis Linux (upstream: <https://git.sr.ht/~mcf/oasis/>) git clone https://anongit.hacktivis.me/git/oasis.git
commit: 52a1ac8da18ed4d61f5566631e2c5e1b0b440df8
parent 9116002f4995b34cc0da60575dc2c1882cc180a8
Author: Michael Forney <mforney@mforney.org>
Date:   Fri, 20 Oct 2017 17:12:29 -0700

tz: Fix some issues in tzdata.lua

When this was converted from an awk script, two regressions were introduced:

- hash.rc failures did not cause a failure in tzdata.lua.
- We stopped actually running the zic command.

Diffstat:

Mpkg/tz/tzdata.lua16+++++++++++-----
1 file changed, 11 insertions(+), 5 deletions(-)

diff --git a/pkg/tz/tzdata.lua b/pkg/tz/tzdata.lua @@ -1,17 +1,23 @@ -local cmd = 'rc ./scripts/hash.rc %s %s share/zoneinfo/%s %s' +local function execute(cmd) + if not os.execute(cmd) then + error('command failed: '..cmd) + end +end -repo = arg[1] -outdir = arg[2] +local hash = 'rc ./scripts/hash.rc %s %s share/zoneinfo/%s %s' +local repo = arg[1] +local outdir = arg[2] for i = 3, #arg do + execute(string.format('zic -d %s %s', outdir, arg[i])) for line in io.lines(arg[i]) do local target, name = line:match('^Link%s+(%g+)%s+(%g+)') if target then target = name:gsub('[^/]+', '..'):sub(1, -3)..target - os.execute(cmd:format(repo, 120000, name, target)) + execute(hash:format(repo, 120000, name, target)) else name = line:match('^Zone%s+(%g+)') if name then - os.execute(cmd:format(repo, 100644, name, outdir..'/'..name)) + execute(hash:format(repo, 100644, name, outdir..'/'..name)) end end end