]> git.tdb.fi Git - libs/net.git/blobdiff - source/net/resolve.h
Use std::unique_ptr for owning pointers
[libs/net.git] / source / net / resolve.h
index 6a0479e6aa363f2b22a49b5e1b999860a7666417..ae0411bd807c5e37292e0fd76f75e1fd34f9d94d 100644 (file)
@@ -2,6 +2,7 @@
 #define MSP_NET_RESOLVE_H_
 
 #include <deque>
+#include <memory>
 #include <string>
 #include <msp/core/mutex.h>
 #include <msp/core/semaphore.h>
@@ -40,8 +41,8 @@ private:
                std::string host;
                std::string serv;
                Family family = UNSPEC;
-               SockAddr *addr = 0;
-               std::runtime_error *error = 0;
+               std::unique_ptr<SockAddr> addr;
+               std::unique_ptr<std::runtime_error> error;
 
                bool is_complete() const { return addr || error; }
        };
@@ -59,7 +60,7 @@ private:
                WorkerThread();
                ~WorkerThread();
 
-               void add_task(const Task &);
+               void add_task(Task &&);
                Task *get_complete_task();
                void pop_complete_task();
 
@@ -74,7 +75,7 @@ public:
        sigc::signal<void, unsigned, const std::exception &> signal_resolve_failed;
 
 private:
-       IO::EventDispatcher *event_disp = 0;
+       IO::EventDispatcher *event_disp = nullptr;
        WorkerThread thread;
        unsigned next_tag = 1;