Age | Commit message (Collapse) | Author |
|
The erlang:open_port spawn and spawn_executable directives can include
an {env, Env} directive to set up environment variables for the
spawned process. Variables can be unset with {"NameOfVariable",false}.
A bug in ert/emulator/sys/unix/sys.c could cause unset variables
to not be unset. This would typically happen if there where more
variables to be unset than there where already set variables in the
destination evironment.
Fix this problem for unix and add a new regression test for it to
the port test suite. Windows does not seem to have the same problem.
|
|
|
|
The experimental Standalone Erlang (SAE) support based on
Joe Armstrong's work has long been broken. Remove the remaining
code and Makefile rules.
|
|
The erlang:open_port spawn and spawn_executable directives can include
an {env, Env} directive to set up environment variables for the
spawned process. A bug in ert/emulator/sys/unix/sys.c prevented
applications from using {env, Env} to set an environment variable
whose value ended with a '=' (equal sign) character; the code mistook
the trailing equal sign as an indication that an environment variable
was to be cleared from the environment of the spawned process.
For example, passing an {env, Env} of
{env, [{"foo", "bar="}]}
would result in the code in sys.c seeing a string of the form
"foo=bar="
The code would see the final '=' character and assume the directive
wanted to clear a variable named "foo=bar" from the environment of the
spawned process, rather than seeing it as a directive to set the
environment variable "foo" to the value "bar=".
Fix this problem and add a new regression test for it to the port test
suite.
|
|
In the erts/emulator/beam sources
#ifdef SOME_OPERATING_SYSTEM
should be avoided. Instead, call a function implemented in
sys/OPERATING_SYSTEM/sys.c.
|
|
tile-cc 2.0.1.78377 when compiling the runtime system.
|
|
|