summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTobias Markmann <tm@ayena.de>2015-06-30 07:02:01 (GMT)
committerKevin Smith <kevin.smith@isode.com>2015-07-07 19:58:12 (GMT)
commit799a7ac203dc2576872894dfdd1adb5cdbbacf7b (patch)
treee0242decf49222b83674143cf04f61c3dc01bc35 /Swiften/FileTransfer/IncomingJingleFileTransfer.cpp
parentabd96284e162b3594bd0fc90a5da6b78709dee23 (diff)
downloadswift-799a7ac203dc2576872894dfdd1adb5cdbbacf7b.zip
swift-799a7ac203dc2576872894dfdd1adb5cdbbacf7b.tar.bz2
Fix memory leaks reported by ASAN
Test-Information: Tested on Elementary OS with a LLVM/Clang 3.7.0 build. With this patch the reports for the fixed locations are gone. Change-Id: I0260fc85ad662335a69ace331f51ebe2f864ef97
Diffstat (limited to 'Swiften/FileTransfer/IncomingJingleFileTransfer.cpp')
-rw-r--r--Swiften/FileTransfer/IncomingJingleFileTransfer.cpp17
1 files changed, 9 insertions, 8 deletions
diff --git a/Swiften/FileTransfer/IncomingJingleFileTransfer.cpp b/Swiften/FileTransfer/IncomingJingleFileTransfer.cpp
index 877b2fd..39da46f 100644
--- a/Swiften/FileTransfer/IncomingJingleFileTransfer.cpp
+++ b/Swiften/FileTransfer/IncomingJingleFileTransfer.cpp
@@ -12,20 +12,20 @@
#include <boost/smart_ptr/make_shared.hpp>
#include <Swiften/Base/Log.h>
-#include <Swiften/StringCodecs/Base64.h>
#include <Swiften/Base/foreach.h>
-#include <Swiften/Jingle/JingleSession.h>
+#include <Swiften/Elements/JingleFileTransferDescription.h>
+#include <Swiften/Elements/JingleFileTransferHash.h>
#include <Swiften/Elements/JingleIBBTransportPayload.h>
#include <Swiften/Elements/JingleS5BTransportPayload.h>
-#include <Swiften/Elements/JingleFileTransferHash.h>
-#include <Swiften/FileTransfer/IncrementalBytestreamHashCalculator.h>
#include <Swiften/FileTransfer/FileTransferTransporter.h>
#include <Swiften/FileTransfer/FileTransferTransporterFactory.h>
+#include <Swiften/FileTransfer/IncrementalBytestreamHashCalculator.h>
+#include <Swiften/FileTransfer/TransportSession.h>
#include <Swiften/FileTransfer/WriteBytestream.h>
-#include <Swiften/Elements/JingleFileTransferDescription.h>
+#include <Swiften/Jingle/JingleSession.h>
#include <Swiften/Network/TimerFactory.h>
#include <Swiften/Queries/GenericRequest.h>
-#include <Swiften/FileTransfer/TransportSession.h>
+#include <Swiften/StringCodecs/Base64.h>
using namespace Swift;
@@ -56,6 +56,8 @@ IncomingJingleFileTransfer::IncomingJingleFileTransfer(
}
IncomingJingleFileTransfer::~IncomingJingleFileTransfer() {
+ delete hashCalculator;
+ hashCalculator = NULL;
}
void IncomingJingleFileTransfer::accept(
@@ -334,8 +336,7 @@ void IncomingJingleFileTransfer::stopAll() {
case Finished: SWIFT_LOG(warning) << "Already finished" << std::endl; break;
}
if (state != Initial) {
- delete transporter;
- transporter = NULL;
+ removeTransporter();
}
}