freebsd-ports/lang/qscheme/files/patch-socket.c
Dmitry Marakasov f2bb29203c - Fix build with gcc 4.2
PR:		132287
Submitted by:	Vitaly Magerya <vmagerya at gmail dot com>
Approved by:	Erik Greenwald <erik dot greenwald at gmail dot com> (maintainer)
2009-04-01 22:31:31 +00:00

30 lines
887 B
C

--- socket.c.orig 2009-03-03 18:05:10.000000000 +0200
+++ socket.c 2009-03-03 18:07:34.000000000 +0200
@@ -25,6 +25,7 @@
#define SCM_SOCKETP(x) (SCM_OBJTYPE(x) == SOBJ_T_SOCKET)
#define SCM_SOCKET(x) ((SCM_SocketAux*)SCM_AUX(x))
+#define SCM_SOCKET_SET SCM_AUX_SET
/* report system error */
static void system_error(char *msg)
@@ -39,7 +40,8 @@
{
SOBJ new;
new = scm_newcell(SOBJ_T_SOCKET);
- SCM_SOCKET(new) = scm_must_alloc(sizeof(SCM_SocketAux));
+ /*SCM_SOCKET(new) = scm_must_alloc(sizeof(SCM_SocketAux));*/
+ SCM_SOCKET_SET(new, scm_must_alloc(sizeof(SCM_SocketAux)));
memset(SCM_SOCKET(new), 0, sizeof(SCM_SocketAux));
return(new);
}
@@ -323,7 +325,8 @@
/* scm_puts("; sweeping socket "); scm_cprint(x); */
scm_socket_shutdown2(x, 1);
scm_free(SCM_SOCKET(x));
- SCM_SOCKET(x) = NULL;
+ /*SCM_SOCKET(x) = NULL;*/
+ SCM_SOCKET_SET(x, NULL);
}
}