Age | Commit message (Collapse) | Author |
|
|
|
longs, longlongs and wchar were too small on 64-bit
which could lead to potential buffer overflow at encoding.
__OE_DOUBLESZ__ was too big, probably due to old text format.
|
|
bug exists since OTP-20.3.4
1d3acb70debd134c8346b7e98347171d5cf6fc62
|
|
1. Use ei_encode_atom_len to not repeat strlen(p) twice.
2. Do a dirty over estimation of atom encoding space needed
to avoid calling ei_encode_atom_len twice.
|
|
|
|
|
|
|
|
The warnings are:
oe_ei_encode_string.c:26:3: warning: expression result unused [-Wunused-value]
(int) ei_encode_string(0,&size,p);
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
oe_ei_encode_port.c:26:3: warning: expression result unused [-Wunused-value]
(int) ei_encode_port(NULL, &size, p);
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
oe_ei_encode_atom.c:26:3: warning: expression result unused [-Wunused-value]
(int) ei_encode_atom(0,&size,p);
^ ~~~~~~~~~~~~~~~~~~~~~~~~~
oe_ei_encode_pid.c:26::3: warning: expression result unused [-Wunused-value]
(int) ei_encode_pid(NULL, &size, p);
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
oe_ei_encode_ref.c:26:3: warning: expression result unused [-Wunused-value]
(int) ei_encode_ref(NULL, &size, p);
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
oe_ei_encode_term.c:26:3: warning: expression result unused [-Wunused-value]
(int) ei_encode_term(NULL, &size, t);
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
|
|
|
|
in order to be backward compatible with user code that
accesses the members of erlang_pid and friend.
The documentation does not mention the content of these structs,
but we have example code that does. So the safe way it the revert
the node_org_enc field (added in R16A) and instead determine in
runtime which atom encoding to use depending on if the node atom
contains unicode (>255) characters or not.
|
|
Note that all these changes was needed due to violations of the APIs
in erl_interface and jinterface.
One might of course argue that these violations was made due to
shortages in erl_interface and jinterface.
|
|
With silent rules, the output of make is less verbose and compilation
warnings are easier to spot. Silent rules are disabled by default and
can be disabled or enabled at will by make V=0 and make V=1.
|
|
|
|
OTP-10106
OTP-10107
|
|
|
|
Create directories first, not within implicit rules. If two
'install' instances runs at the same time attempting to create
a directory, one of them may fail with an "File exists" error.
I tried to use order-only prerequisites to create the directories,
but run into two problems: First, order-only prerequisites are
only implemented in Make 3.80 and later. Second, on a computer
running Solaris/Intel 2.8 (with Make 3.80), order-only prerequisites
seemed to work like ordinary prerequisites, causing targets to
be re-built if the timestamp for the directory changed.
Therefore, using a shell command to run mkdir seems to be the
more portable solution.
|
|
|