From 4afeefbb3cc8185a89626364b0babc5998ced581 Mon Sep 17 00:00:00 2001 From: Andy Green Date: Tue, 24 Oct 2017 19:25:46 +0800 Subject: [PATCH] build: strict-aliasing on old compiler workaround https://github.com/warmcat/libwebsockets/issues/1067 --- lib/libwebsockets.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/lib/libwebsockets.c b/lib/libwebsockets.c index 5abb1a73..04f6de19 100644 --- a/lib/libwebsockets.c +++ b/lib/libwebsockets.c @@ -2265,7 +2265,11 @@ lws_socket_bind(struct lws_vhost *vhost, lws_sockfd_type sockfd, int port, ntohs(((struct sockaddr_in6 *) &sin)->sin6_port) : ntohs(((struct sockaddr_in *) &sin)->sin_port); #else - port = ntohs(((struct sockaddr_in *) &sin)->sin_port); + { + struct sockaddr_in sain; + memcpy(&sain, &sin, sizeof(sain)); + port = ntohs(sain.sin_port); + } #endif #endif