diff options
Diffstat (limited to 'Swiften/StreamStack')
-rw-r--r-- | Swiften/StreamStack/WhitespacePingLayer.cpp | 10 | ||||
-rw-r--r-- | Swiften/StreamStack/WhitespacePingLayer.h | 9 |
2 files changed, 6 insertions, 13 deletions
diff --git a/Swiften/StreamStack/WhitespacePingLayer.cpp b/Swiften/StreamStack/WhitespacePingLayer.cpp index b9fbbd1..b10ba1a 100644 --- a/Swiften/StreamStack/WhitespacePingLayer.cpp +++ b/Swiften/StreamStack/WhitespacePingLayer.cpp @@ -6,13 +6,9 @@ namespace Swift { static const int TIMEOUT_MILLISECONDS = 60000; WhitespacePingLayer::WhitespacePingLayer() { - timer_ = new Timer(TIMEOUT_MILLISECONDS); - timer_->onTick.connect(boost::bind(&WhitespacePingLayer::handleTimerTick, this)); - timer_->start(); -} - -WhitespacePingLayer::~WhitespacePingLayer() { - delete timer_; + timer = boost::shared_ptr<Timer>(new Timer(TIMEOUT_MILLISECONDS)); + timer->onTick.connect(boost::bind(&WhitespacePingLayer::handleTimerTick, this)); + timer->start(); } void WhitespacePingLayer::writeData(const ByteArray& data) { diff --git a/Swiften/StreamStack/WhitespacePingLayer.h b/Swiften/StreamStack/WhitespacePingLayer.h index 01fd3e3..ed0648b 100644 --- a/Swiften/StreamStack/WhitespacePingLayer.h +++ b/Swiften/StreamStack/WhitespacePingLayer.h @@ -1,7 +1,7 @@ -#ifndef SWIFTEN_WhitespacePingLayer_H -#define SWIFTEN_WhitespacePingLayer_H +#pragma once #include <boost/noncopyable.hpp> +#include <boost/shared_ptr.hpp> #include "Swiften/StreamStack/StreamLayer.h" @@ -11,7 +11,6 @@ namespace Swift { class WhitespacePingLayer : public StreamLayer, boost::noncopyable { public: WhitespacePingLayer(); - ~WhitespacePingLayer(); void writeData(const ByteArray& data); void handleDataRead(const ByteArray& data); @@ -20,8 +19,6 @@ namespace Swift { void handleTimerTick(); private: - Timer* timer_; + boost::shared_ptr<Timer> timer; }; } - -#endif |