Skip to content

Commit 14dce73

Browse files
committed
fix warnings form clang's -Wcast-align, google code bug robbiehanson#120
1 parent 6b39445 commit 14dce73

File tree

1 file changed

+9
-7
lines changed

1 file changed

+9
-7
lines changed

GCD/GCDAsyncSocket.m

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6888,16 +6888,17 @@ + (BOOL)getHost:(NSString **)hostPtr port:(uint16_t *)portPtr fromAddress:(NSDat
68886888
{
68896889
if ([address length] >= sizeof(struct sockaddr))
68906890
{
6891-
const struct sockaddr *sockaddrX = (const struct sockaddr *)[address bytes];
6891+
const struct sockaddr *sockaddrX = [address bytes];
68926892

68936893
if (sockaddrX->sa_family == AF_INET)
68946894
{
68956895
if ([address length] >= sizeof(struct sockaddr_in))
68966896
{
6897-
const struct sockaddr_in *sockaddr4 = (const struct sockaddr_in *)sockaddrX;
6897+
struct sockaddr_in sockaddr4;
6898+
memcpy(&sockaddr4, sockaddrX, sizeof(sockaddr4));
68986899

6899-
if (hostPtr) *hostPtr = [self hostFromSockaddr4:sockaddr4];
6900-
if (portPtr) *portPtr = [self portFromSockaddr4:sockaddr4];
6900+
if (hostPtr) *hostPtr = [self hostFromSockaddr4:&sockaddr4];
6901+
if (portPtr) *portPtr = [self portFromSockaddr4:&sockaddr4];
69016902

69026903
return YES;
69036904
}
@@ -6906,10 +6907,11 @@ + (BOOL)getHost:(NSString **)hostPtr port:(uint16_t *)portPtr fromAddress:(NSDat
69066907
{
69076908
if ([address length] >= sizeof(struct sockaddr_in6))
69086909
{
6909-
const struct sockaddr_in6 *sockaddr6 = (const struct sockaddr_in6 *)sockaddrX;
6910+
struct sockaddr_in6 sockaddr6;
6911+
memcpy(&sockaddr6, sockaddrX, sizeof(sockaddr6));
69106912

6911-
if (hostPtr) *hostPtr = [self hostFromSockaddr6:sockaddr6];
6912-
if (portPtr) *portPtr = [self portFromSockaddr6:sockaddr6];
6913+
if (hostPtr) *hostPtr = [self hostFromSockaddr6:&sockaddr6];
6914+
if (portPtr) *portPtr = [self portFromSockaddr6:&sockaddr6];
69136915

69146916
return YES;
69156917
}

0 commit comments

Comments
 (0)