Michał Górny <mgo...@gentoo.org> writes:> >> + # Following commands should always succeed unless something weird is >> going >> + # on. >> + cat "${tmpf}" >"${f}" || die 'failed to replace source file' || return >> + rm "${tmpf}" || die "failed to remove temporary file" > > Any reason not to use mv here? Aside to making this simpler, it would > also prevent this from rewriting contents of hardlinked files.
Permissions of ${f} wouldn't be preserved. >> + return 1 >> +} >> + >> +tbegin "preserves permissions" >> + >> +cd "${tmpdir}" || tend $? > > This doesn't terminate tests. So you'll end up creating files > in the wrong directory. Of course! :-/ Probably it would be best to put each test case in a function. I have the same issue in tests for rebar.eclass. Thanks! PS. As of discussion with robbat2, I am probably going to depend on gawk-4.1 (which has in-place edit feature) and use it explicitely in rebar.eclass and some other ebuilds where I meant to use eawk. robbat2 has already requested stabilization of gawk-4.1. Thanks, -- Amadeusz Żołnowski
signature.asc
Description: PGP signature