summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Swiften/Elements/StanzaAck.cpp8
-rw-r--r--Swiften/Elements/StanzaAck.h4
-rw-r--r--Swiften/Parser/StanzaAckParser.cpp4
-rw-r--r--Swiften/StreamManagement/StanzaAckRequester.cpp6
-rw-r--r--Swiften/StreamManagement/StanzaAckResponder.cpp6
-rw-r--r--Swiften/StreamManagement/UnitTest/StanzaAckRequesterTest.cpp7
-rw-r--r--Swiften/StreamManagement/UnitTest/StanzaAckResponderTest.cpp7
7 files changed, 19 insertions, 23 deletions
diff --git a/Swiften/Elements/StanzaAck.cpp b/Swiften/Elements/StanzaAck.cpp
index bd0b78d..dda97f5 100644
--- a/Swiften/Elements/StanzaAck.cpp
+++ b/Swiften/Elements/StanzaAck.cpp
@@ -1,19 +1,17 @@
/*
- * Copyright (c) 2013 Isode Limited.
+ * Copyright (c) 2013-2018 Isode Limited.
* All rights reserved.
* See the COPYING file for more information.
*/
#include <Swiften/Elements/StanzaAck.h>
-#include <boost/numeric/conversion/cast.hpp>
-
using namespace Swift;
StanzaAck::~StanzaAck() {
}
-void StanzaAck::setHandledStanzasCount(int i) {
- handledStanzasCount = boost::numeric_cast<unsigned int>(i);
+void StanzaAck::setHandledStanzasCount(unsigned int i) {
+ handledStanzasCount = i;
valid = true;
}
diff --git a/Swiften/Elements/StanzaAck.h b/Swiften/Elements/StanzaAck.h
index 68f0a2f..f664aca 100644
--- a/Swiften/Elements/StanzaAck.h
+++ b/Swiften/Elements/StanzaAck.h
@@ -1,11 +1,11 @@
/*
- * Copyright (c) 2010-2016 Isode Limited.
+ * Copyright (c) 2010-2018 Isode Limited.
* All rights reserved.
* See the COPYING file for more information.
*/
#pragma once
#include <memory>
#include <Swiften/Base/API.h>
@@ -18,19 +18,19 @@ namespace Swift {
StanzaAck() : valid(false), handledStanzasCount(0) {}
StanzaAck(unsigned int handledStanzasCount) : valid(true), handledStanzasCount(handledStanzasCount) {}
virtual ~StanzaAck();
unsigned int getHandledStanzasCount() const {
return handledStanzasCount;
}
- void setHandledStanzasCount(int i);
+ void setHandledStanzasCount(unsigned int i);
bool isValid() const {
return valid;
}
private:
bool valid;
unsigned int handledStanzasCount;
};
diff --git a/Swiften/Parser/StanzaAckParser.cpp b/Swiften/Parser/StanzaAckParser.cpp
index de0287e..42ab181 100644
--- a/Swiften/Parser/StanzaAckParser.cpp
+++ b/Swiften/Parser/StanzaAckParser.cpp
@@ -1,29 +1,29 @@
/*
- * Copyright (c) 2010 Isode Limited.
+ * Copyright (c) 2010-2018 Isode Limited.
* All rights reserved.
* See the COPYING file for more information.
*/
#include <Swiften/Parser/StanzaAckParser.h>
#include <boost/lexical_cast.hpp>
namespace Swift {
StanzaAckParser::StanzaAckParser() : GenericElementParser<StanzaAck>(), depth(0) {
}
void StanzaAckParser::handleStartElement(const std::string&, const std::string&, const AttributeMap& attributes) {
if (depth == 0) {
std::string handledStanzasString = attributes.getAttribute("h");
try {
- getElementGeneric()->setHandledStanzasCount(boost::lexical_cast<int>(handledStanzasString));
+ getElementGeneric()->setHandledStanzasCount(boost::lexical_cast<unsigned int>(handledStanzasString));
}
catch (const boost::bad_lexical_cast &) {
}
}
++depth;
}
void StanzaAckParser::handleEndElement(const std::string&, const std::string&) {
--depth;
diff --git a/Swiften/StreamManagement/StanzaAckRequester.cpp b/Swiften/StreamManagement/StanzaAckRequester.cpp
index 8941f4a..a0f5b70 100644
--- a/Swiften/StreamManagement/StanzaAckRequester.cpp
+++ b/Swiften/StreamManagement/StanzaAckRequester.cpp
@@ -1,25 +1,23 @@
/*
- * Copyright (c) 2010-2016 Isode Limited.
+ * Copyright (c) 2010-2018 Isode Limited.
* All rights reserved.
* See the COPYING file for more information.
*/
#include <Swiften/StreamManagement/StanzaAckRequester.h>
-#include <boost/numeric/conversion/cast.hpp>
-
#include <Swiften/Base/Log.h>
#include <Swiften/Elements/Message.h>
namespace Swift {
-static const unsigned int MAX_HANDLED_STANZA_COUNT = boost::numeric_cast<unsigned int>((1ULL<<32) - 1);
+static const unsigned int MAX_HANDLED_STANZA_COUNT = static_cast<unsigned int>((1ULL<<32) - 1);
StanzaAckRequester::StanzaAckRequester() : lastHandledStanzasCount(0) {
}
void StanzaAckRequester::handleStanzaSent(std::shared_ptr<Stanza> stanza) {
unackedStanzas.push_back(stanza);
if (std::dynamic_pointer_cast<Message>(stanza)) {
onRequestAck();
diff --git a/Swiften/StreamManagement/StanzaAckResponder.cpp b/Swiften/StreamManagement/StanzaAckResponder.cpp
index b6171d0..bfe6f4d 100644
--- a/Swiften/StreamManagement/StanzaAckResponder.cpp
+++ b/Swiften/StreamManagement/StanzaAckResponder.cpp
@@ -1,22 +1,20 @@
/*
- * Copyright (c) 2010 Isode Limited.
+ * Copyright (c) 2010-2018 Isode Limited.
* All rights reserved.
* See the COPYING file for more information.
*/
#include <Swiften/StreamManagement/StanzaAckResponder.h>
-#include <boost/numeric/conversion/cast.hpp>
-
namespace Swift {
-static const unsigned int MAX_HANDLED_STANZA_COUNT = boost::numeric_cast<unsigned int>((1ULL<<32) - 1);
+static const unsigned int MAX_HANDLED_STANZA_COUNT = static_cast<unsigned int>((1ULL << 32) - 1);
StanzaAckResponder::StanzaAckResponder() : handledStanzasCount(0) {
}
void StanzaAckResponder::handleStanzaReceived() {
handledStanzasCount = (handledStanzasCount == MAX_HANDLED_STANZA_COUNT ? 0 : handledStanzasCount + 1);
}
void StanzaAckResponder::handleAckRequestReceived() {
diff --git a/Swiften/StreamManagement/UnitTest/StanzaAckRequesterTest.cpp b/Swiften/StreamManagement/UnitTest/StanzaAckRequesterTest.cpp
index ce16e1f..e0ebefd 100644
--- a/Swiften/StreamManagement/UnitTest/StanzaAckRequesterTest.cpp
+++ b/Swiften/StreamManagement/UnitTest/StanzaAckRequesterTest.cpp
@@ -1,17 +1,18 @@
/*
- * Copyright (c) 2010-2016 Isode Limited.
+ * Copyright (c) 2010-2018 Isode Limited.
* All rights reserved.
* See the COPYING file for more information.
*/
+#include <cstdint>
+
#include <boost/bind.hpp>
-#include <boost/numeric/conversion/cast.hpp>
#include <cppunit/extensions/HelperMacros.h>
#include <cppunit/extensions/TestFactoryRegistry.h>
#include <Swiften/Elements/IQ.h>
#include <Swiften/Elements/Message.h>
#include <Swiften/Elements/Presence.h>
#include <Swiften/StreamManagement/StanzaAckRequester.h>
@@ -105,19 +106,19 @@ class StanzaAckRequesterTest : public CppUnit::TestFixture {
CPPUNIT_ASSERT_EQUAL(3, static_cast<int>(ackedStanzas.size()));
CPPUNIT_ASSERT_EQUAL(std::string("m1"), ackedStanzas[0]->getID());
CPPUNIT_ASSERT_EQUAL(std::string("m2"), ackedStanzas[1]->getID());
CPPUNIT_ASSERT_EQUAL(std::string("m3"), ackedStanzas[2]->getID());
}
// Handle stanza ack count wrapping, as per the XEP
void testHandleAckReceived_WrapAround() {
std::shared_ptr<StanzaAckRequester> testling(createRequester());
- testling->lastHandledStanzasCount = boost::numeric_cast<unsigned int>((1ULL<<32) - 1);
+ testling->lastHandledStanzasCount = UINT32_MAX;
testling->handleStanzaSent(createMessage("m1"));
testling->handleStanzaSent(createMessage("m2"));
testling->handleAckReceived(1);
CPPUNIT_ASSERT_EQUAL(2, static_cast<int>(ackedStanzas.size()));
CPPUNIT_ASSERT_EQUAL(std::string("m1"), ackedStanzas[0]->getID());
CPPUNIT_ASSERT_EQUAL(std::string("m2"), ackedStanzas[1]->getID());
}
diff --git a/Swiften/StreamManagement/UnitTest/StanzaAckResponderTest.cpp b/Swiften/StreamManagement/UnitTest/StanzaAckResponderTest.cpp
index ffdabe9..ee4b913 100644
--- a/Swiften/StreamManagement/UnitTest/StanzaAckResponderTest.cpp
+++ b/Swiften/StreamManagement/UnitTest/StanzaAckResponderTest.cpp
@@ -1,17 +1,18 @@
/*
- * Copyright (c) 2010-2016 Isode Limited.
+ * Copyright (c) 2010-2018 Isode Limited.
* All rights reserved.
* See the COPYING file for more information.
*/
+#include <cstdint>
+
#include <boost/bind.hpp>
-#include <boost/numeric/conversion/cast.hpp>
#include <cppunit/extensions/HelperMacros.h>
#include <cppunit/extensions/TestFactoryRegistry.h>
#include <Swiften/Elements/Message.h>
#include <Swiften/StreamManagement/StanzaAckResponder.h>
using namespace Swift;
@@ -57,19 +58,19 @@ class StanzaAckResponderTest : public CppUnit::TestFixture {
CPPUNIT_ASSERT_EQUAL(2, static_cast<int>(acks.size()));
CPPUNIT_ASSERT_EQUAL(1U, acks[0]);
CPPUNIT_ASSERT_EQUAL(2U, acks[1]);
}
// Handle stanza ack count wrapping, as per the XEP
void testHandleAckRequestReceived_WrapAround() {
std::shared_ptr<StanzaAckResponder> testling(createResponder());
- testling->handledStanzasCount = boost::numeric_cast<unsigned int>((1ULL<<32) - 1);
+ testling->handledStanzasCount = UINT32_MAX;
testling->handleStanzaReceived();
testling->handleStanzaReceived();
testling->handleAckRequestReceived();
CPPUNIT_ASSERT_EQUAL(1, static_cast<int>(acks.size()));
CPPUNIT_ASSERT_EQUAL(1U, acks[0]);
}