]> git.tdb.fi Git - libs/net.git/blobdiff - source/net/streamsocket.cpp
Use std::unique_ptr for owning pointers
[libs/net.git] / source / net / streamsocket.cpp
index c8eb1c488ac365d6471469ca59ffc2b034c78b45..02a7b54ede3c6591031c4eac7b16ff7b478f7044 100644 (file)
@@ -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<sockaddr *>(&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);
        }