Re: [PATCH] t4014: shell portability fix

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, May 31, 2016 at 08:09:43PM -0400, Eric Sunshine wrote:

> >> -     GIT_AUTHOR_NAME="éxötìc" test_commit exotic &&
> >> +     (export GIT_AUTHOR_NAME="éxötìc"; test_commit exotic) &&
> 
> Isn't "export FOO=val" unportable?

Good catch. I was so busy looking for other cases I didn't even see
the problem here.

> > Thanks. This one is my fault. There's another use of the same name
> > elsewhere, but it's to call "git commit" directly, so it's OK.
> 
> I was under the impression that the project was moving toward 'env' to
> deal[1] with this sort of issue.
> 
> [1]: 512477b (tests: use "env" to run commands with temporary env-var
> settings, 2014-03-18)

We can use it with test_must_fail, because it takes a command name:

  test_must_fail env FOO=BAR whatever-you-would-have-run

But I don't think it works in the general case, as test_commit does not
run its arguments. So you'd want something like:

  env FOO=BAR test_commit exotic

but of course that doesn't work because "env" can't find the shell
function. I think with bash you could do:

  export test_commit
  env FOO=BAR bash -c test_commit exotic

but we can't rely on that.

-Peff
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]