aboutsummaryrefslogtreecommitdiff
path: root/lang/erlang14
diff options
context:
space:
mode:
authorJimmy Olgeni <olgeni@FreeBSD.org>2009-07-01 14:58:04 +0000
committerJimmy Olgeni <olgeni@FreeBSD.org>2009-07-01 14:58:04 +0000
commit56d091e0c524643ab941d515c600b4f225b9f123 (patch)
tree3687cd330d9835c7547e9dc3ca5d44a2ede96a4a /lang/erlang14
parent6d26f6f16ee84040150f5fd36bb0244cb03e4218 (diff)
downloadports-56d091e0c524643ab941d515c600b4f225b9f123.tar.gz
ports-56d091e0c524643ab941d515c600b4f225b9f123.zip
The per-thread last floating point exception pointer is not initialized
to NULL when it is allocated. As a result, spurious floating point exceptions are reported. Obtained from: David Reiss <dreiss at cs.stanford.edu>
Notes
Notes: svn path=/head/; revision=236869
Diffstat (limited to 'lang/erlang14')
-rw-r--r--lang/erlang14/Makefile2
-rw-r--r--lang/erlang14/files/patch-erts_emulator_sys_unix_sys__float.c13
2 files changed, 14 insertions, 1 deletions
diff --git a/lang/erlang14/Makefile b/lang/erlang14/Makefile
index 0f0287f76df8..76b230947a6e 100644
--- a/lang/erlang14/Makefile
+++ b/lang/erlang14/Makefile
@@ -7,7 +7,7 @@
PORTNAME= erlang
PORTVERSION= r13b01
-PORTREVISION= 4
+PORTREVISION= 5
PORTEPOCH= 1
CATEGORIES= lang parallel java
MASTER_SITES= http://www.erlang.org/download/ \
diff --git a/lang/erlang14/files/patch-erts_emulator_sys_unix_sys__float.c b/lang/erlang14/files/patch-erts_emulator_sys_unix_sys__float.c
new file mode 100644
index 000000000000..a21b4d08e33d
--- /dev/null
+++ b/lang/erlang14/files/patch-erts_emulator_sys_unix_sys__float.c
@@ -0,0 +1,13 @@
+
+$FreeBSD$
+
+--- erts/emulator/sys/unix/sys_float.c.orig
++++ erts/emulator/sys/unix/sys_float.c
+@@ -57,6 +57,7 @@
+ void erts_thread_init_fp_exception(void)
+ {
+ unsigned long *fpe = erts_alloc(ERTS_ALC_T_FP_EXCEPTION, sizeof(*fpe));
++ *fpe = 0;
+ erts_tsd_set(fpe_key, fpe);
+ }
+