diff --git a/include/Swiften/FileTransfer/MyOutgoingSIFileTransfer.cpp b/include/Swiften/FileTransfer/MyOutgoingSIFileTransfer.cpp index 90516981c346b00ff5cc5024f4ef815ee7794173..394cec09dc3dbe590fbca9bee5b319d4ce4c302e 100644 --- a/include/Swiften/FileTransfer/MyOutgoingSIFileTransfer.cpp +++ b/include/Swiften/FileTransfer/MyOutgoingSIFileTransfer.cpp @@ -95,7 +95,12 @@ void MyOutgoingSIFileTransfer::finish(boost::optional error) ibbSession.reset(); } socksServer->removeReadBytestream(id, from, to); - onStateChange(FileTransfer::State(FileTransfer::State::Canceled)); + if(error) { + onStateChange(FileTransfer::State(FileTransfer::State::Canceled)); + } + else { + onStateChange(FileTransfer::State(FileTransfer::State::Finished)); + } onFinished(error); }