diff options
author | olgeni <olgeni@FreeBSD.org> | 2003-08-31 14:39:34 +0000 |
---|---|---|
committer | olgeni <olgeni@FreeBSD.org> | 2003-08-31 14:39:34 +0000 |
commit | b873f1b0d91dc3eead59656b318e1c25ff70cddc (patch) | |
tree | 574c115bf833568af5889be766e1349c3693da7e /lang/erlang14 | |
parent | 799d1498c4d7b961ebf3160259b0e89342abcc51 (diff) | |
download | FreeBSD-ports-b873f1b0d91dc3eead59656b318e1c25ff70cddc.zip FreeBSD-ports-b873f1b0d91dc3eead59656b318e1c25ff70cddc.tar.gz |
The ei_decode_longlong function fails when decoding long values >
2^32, due to a missing cast.
Obtained from: Javier París Fernández <paris@dc.fi.udc.es> on erlang-questions
Diffstat (limited to 'lang/erlang14')
-rw-r--r-- | lang/erlang14/Makefile | 1 | ||||
-rw-r--r-- | lang/erlang14/files/patch-lib_erl__interface_src_decode_decode__longlong.c | 14 |
2 files changed, 15 insertions, 0 deletions
diff --git a/lang/erlang14/Makefile b/lang/erlang14/Makefile index ca6510a..4ea0f02 100644 --- a/lang/erlang14/Makefile +++ b/lang/erlang14/Makefile @@ -7,6 +7,7 @@ PORTNAME= erlang PORTVERSION= r9c0 +PORTREVISION= 1 PORTEPOCH= 1 CATEGORIES= lang MASTER_SITES= ftp://ftp.erlang.org/pub/download/ \ diff --git a/lang/erlang14/files/patch-lib_erl__interface_src_decode_decode__longlong.c b/lang/erlang14/files/patch-lib_erl__interface_src_decode_decode__longlong.c new file mode 100644 index 0000000..ce5e841 --- /dev/null +++ b/lang/erlang14/files/patch-lib_erl__interface_src_decode_decode__longlong.c @@ -0,0 +1,14 @@ + +$FreeBSD$ + +--- lib/erl_interface/src/decode/decode_longlong.c.orig Sun Aug 31 14:00:44 2003 ++++ lib/erl_interface/src/decode/decode_longlong.c Sun Aug 31 14:01:41 2003 +@@ -51,7 +51,7 @@ + int pos, shift = 0; + n = 0; + for (pos = 0; pos < arity; pos++) { +- n |= get8(s) << shift; ++ n |= ((EI_LONGLONG) get8(s)) << shift; + shift += 8; + } + } |