dash should not propagate aliases to subshells

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

 



To: 1053394@xxxxxxxxxxxxxxx, dash@xxxxxxxxxxxxxxx

Hello,

https://pubs.opengroup.org/onlinepubs/9699919799/utilities/V3_chap02.html#tag_18_03_01 says:

2.3.1 Alias Substitution

When used as specified by this volume of POSIX.1-2017, alias definitions shall not be inherited by separate invocations of the shell or by the utility execution environments invoked by the shell.


So a subshell shall have no knowledge about the aliases from the supershell, and backticks start a subshell.

These programs

#!/bin/bash
alias wslpath=echo
find `wslpath /tmp`

and

#!/bin/dash
alias wslpath=echo
find `wslpath /tmp`

produce different results (bash 5.2.15-3.fc38, dash 0.5.12-1.fc38) when executed on a WSL2 system. The former program shows the content of the current directory, the latter program shows the content of /tmp .

Moreover, I filled this initially towards the Debian Bug tracking system (cf. https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1053394) , and was then told to check http://gondor.apana.org.au/~herbert/dash/ .

Please include in the repository https://git.kernel.org/pub/scm/utils/dash/dash.git links to http://gondor.apana.org.au/~herbert/dash/ and dash@xxxxxxxxxxxxxxx , for instance in src/dash.1, so that it is documented where to report problems in dash.

Kind regards
  Dilyan



[Index of Archives]     [LARTC]     [Bugtraq]     [Yosemite Forum]     [Photo]

  Powered by Linux