X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fnet%2Fstreamsocket.cpp;h=9e2d79afe7e1b27dd87d81c5a6b2f7db2f6103b6;hb=HEAD;hp=c8eb1c488ac365d6471469ca59ffc2b034c78b45;hpb=3ab65d35cfd696002e09768a38f98e6a2e1ade81;p=libs%2Fnet.git diff --git a/source/net/streamsocket.cpp b/source/net/streamsocket.cpp index c8eb1c4..9e2d79a 100644 --- a/source/net/streamsocket.cpp +++ b/source/net/streamsocket.cpp @@ -1,11 +1,11 @@ #include "platform_api.h" +#include "streamsocket.h" #include #include #include #include #include "sockaddr_private.h" #include "socket_private.h" -#include "streamsocket.h" namespace Msp { namespace Net { @@ -34,13 +34,11 @@ bool StreamSocket::connect(const SockAddr &addr) set_socket_events(S_CONNECT); } - delete peer_addr; - peer_addr = addr.copy(); + peer_addr.reset(addr.copy()); - delete local_addr; SockAddr::SysAddr lsa; getsockname(priv->handle, reinterpret_cast(&lsa.addr), &lsa.size); - local_addr = SockAddr::new_from_sys(lsa); + local_addr.reset(SockAddr::new_from_sys(lsa)); if(finished) { @@ -99,10 +97,7 @@ void StreamSocket::on_event(IO::PollEvent ev) signal_connect_finished.emit(0); if(err!=0) - { - delete peer_addr; - peer_addr = nullptr; - } + peer_addr.reset(); set_socket_events((err==0) ? S_INPUT : S_NONE); }