diff options
author | nicolas.dufresne@gmail.com <nicolas.dufresne@gmail.com@c587cffe-e639-0410-9787-d7902ae8ed56> | 2012-07-05 18:27:19 +0000 |
---|---|---|
committer | nicolas.dufresne@gmail.com <nicolas.dufresne@gmail.com@c587cffe-e639-0410-9787-d7902ae8ed56> | 2012-07-05 18:27:19 +0000 |
commit | b518056aecb64d7ce4097696a82a2b8afbfdcea5 (patch) | |
tree | b5aa2ddf237e7f6bfe9c299bee121ace9bc81890 /libproxy | |
parent | b10e25af87a374684d2b0079cc8a327365b49cf4 (diff) | |
download | libproxy-b518056aecb64d7ce4097696a82a2b8afbfdcea5.tar.gz |
Fix mix usage of new[] and new
git-svn-id: http://libproxy.googlecode.com/svn/trunk@845 c587cffe-e639-0410-9787-d7902ae8ed56
Diffstat (limited to 'libproxy')
-rw-r--r-- | libproxy/modules/ignore_ip.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/libproxy/modules/ignore_ip.cpp b/libproxy/modules/ignore_ip.cpp index e1b99bd..709a08d 100644 --- a/libproxy/modules/ignore_ip.cpp +++ b/libproxy/modules/ignore_ip.cpp @@ -90,7 +90,7 @@ sockaddr_from_cidr(sa_family_t af, uint8_t cidr) /* IPv4 */ if (af == AF_INET) { - sockaddr_in *mask = new sockaddr_in; + sockaddr_in *mask = (sockaddr_in*) new char[sizeof(sockaddr_in)]; mask->sin_family = af; mask->sin_addr.s_addr = htonl(~0 << (32 - (cidr > 32 ? 32 : cidr))); @@ -100,7 +100,7 @@ sockaddr_from_cidr(sa_family_t af, uint8_t cidr) /* IPv6 */ else if (af == AF_INET6) { - sockaddr_in6 *mask = new sockaddr_in6; + sockaddr_in6 *mask = (sockaddr_in6*) new char[sizeof(sockaddr_in6)]; mask->sin6_family = af; for (uint8_t i=0 ; i < sizeof(mask->sin6_addr) ; i++) mask->sin6_addr.s6_addr[i] = ~0 << (8 - (8*i > cidr ? 0 : cidr-8*i < 8 ? cidr-8*i : 8) ); @@ -154,8 +154,8 @@ public: if (ign_ip && net_ip && ign_ip->sa_family == net_ip->sa_family) goto out; - delete ign_ip; - delete net_ip; + delete[] ign_ip; + delete[] net_ip; ign_ip = NULL; net_ip = NULL; } |