Gentoo Archives: gentoo-commits

From: "Christian Faulhammer (opfer)" <opfer@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in dev-lang/erlang/files: erlang-12.2.4-inet_drv.patch
Date: Fri, 03 Oct 2008 18:52:10
Message-Id: E1Klpl2-0001xl-6I@stork.gentoo.org
1 opfer 08/10/03 18:52:08
2
3 Added: erlang-12.2.4-inet_drv.patch
4 Log:
5 fix severe runtime issues with get_tcp function, taken from upstream as reported in bug 239173 by Oscar Hellström <oscar AT oscarh DOT net>
6 (Portage version: 2.1.4.4)
7
8 Revision Changes Path
9 1.1 dev-lang/erlang/files/erlang-12.2.4-inet_drv.patch
10
11 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/dev-lang/erlang/files/erlang-12.2.4-inet_drv.patch?rev=1.1&view=markup
12 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/dev-lang/erlang/files/erlang-12.2.4-inet_drv.patch?rev=1.1&content-type=text/plain
13
14 Index: erlang-12.2.4-inet_drv.patch
15 ===================================================================
16 --- otp_src_R12B-4.orig/erts/emulator/drivers/common/inet_drv.c 2008-09-01 05:51:18.000000000 -0700
17 +++ otp_src_R12B-4/erts/emulator/drivers/common/inet_drv.c 2008-09-30 10:38:06.000000000 -0700
18 @@ -7239,19 +7239,18 @@
19 buf, &len) == NULL)
20 return ctl_error(EINVAL, rbuf, rsize);
21
22 - sock_select(INETP(desc), FD_CONNECT, 1);
23 code = sock_connect(desc->inet.s,
24 (struct sockaddr*) &desc->inet.remote, len);
25 if ((code == SOCKET_ERROR) &&
26 ((sock_errno() == ERRNO_BLOCK) || /* Winsock2 */
27 (sock_errno() == EINPROGRESS))) { /* Unix & OSE!! */
28 desc->inet.state = TCP_STATE_CONNECTING;
29 + sock_select(INETP(desc), FD_CONNECT, 1);
30 if (timeout != INET_INFINITY)
31 driver_set_timer(desc->inet.port, timeout);
32 enq_async(INETP(desc), tbuf, INET_REQ_CONNECT);
33 }
34 else if (code == 0) { /* ok we are connected */
35 - sock_select(INETP(desc), FD_CONNECT, 0);
36 desc->inet.state = TCP_STATE_CONNECTED;
37 if (desc->inet.active)
38 sock_select(INETP(desc), (FD_READ|FD_CLOSE), 1);
39 @@ -7259,7 +7258,6 @@
40 async_ok(INETP(desc));
41 }
42 else {
43 - sock_select(INETP(desc), FD_CONNECT, 0);
44 return ctl_error(sock_errno(), rbuf, rsize);
45 }
46 return ctl_reply(INET_REP_OK, tbuf, 2, rbuf, rsize);