forked from blue/squawk
some debug, fix a crash removing a currently selected contact
This commit is contained in:
parent
e31ef78e71
commit
19835af3cf
9 changed files with 40 additions and 14 deletions
|
@ -357,28 +357,36 @@ std::pair<Shared::Message::State, QString> Core::MessageHandler::scheduleSending
|
|||
if (task.isFinished()) {
|
||||
const QXmppE2eeExtension::MessageEncryptResult& res = task.result();
|
||||
if (std::holds_alternative<std::unique_ptr<QXmppMessage>>(res)) {
|
||||
qDebug() << "Successfully encrypted a message";
|
||||
const std::unique_ptr<QXmppMessage>& encrypted = std::get<std::unique_ptr<QXmppMessage>>(res);
|
||||
encrypted->setBody(QString());
|
||||
encrypted->setOutOfBandUrl(QString());
|
||||
bool success = acc->client.sendPacket(*encrypted.get());
|
||||
if (success)
|
||||
if (success) {
|
||||
qDebug() << "Successfully sent an encrypted message";
|
||||
return {Shared::Message::State::sent, ""};
|
||||
else
|
||||
} else {
|
||||
qDebug() << "Couldn't sent an encrypted message";
|
||||
return {Shared::Message::State::error, "Error sending successfully encrypted message"};
|
||||
}
|
||||
} else if (std::holds_alternative<QXmppError>(res)) {
|
||||
qDebug() << "Couldn't encrypt a message";
|
||||
const QXmppError& err = std::get<QXmppError>(res);
|
||||
return {Shared::Message::State::error, err.description};
|
||||
} else {
|
||||
qDebug() << "Couldn't encrypt a message";
|
||||
return {Shared::Message::State::error, "Unexpected error ecryptng the message"};
|
||||
}
|
||||
} else {
|
||||
task.then(this, [this, id] (QXmppE2eeExtension::MessageEncryptResult&& result) {
|
||||
if (std::holds_alternative<std::unique_ptr<QXmppMessage>>(result)) {
|
||||
qDebug() << "Successfully encrypted a message";
|
||||
const std::unique_ptr<QXmppMessage>& encrypted = std::get<std::unique_ptr<QXmppMessage>>(result);
|
||||
encrypted->setBody(QString());
|
||||
encrypted->setOutOfBandUrl(QString());
|
||||
bool success = acc->client.sendPacket(*encrypted.get());
|
||||
if (success) {
|
||||
qDebug() << "Successfully sent an encrypted message";
|
||||
std::tuple<bool, QString, QString> ids = getOriginalPendingMessageId(id, false);
|
||||
if (std::get<0>(ids)) {
|
||||
QString id = std::get<1>(ids);
|
||||
|
@ -393,12 +401,15 @@ std::pair<Shared::Message::State, QString> Core::MessageHandler::scheduleSending
|
|||
qDebug() << "Encrypted message has been successfully sent, but it couldn't be found to update the sate";
|
||||
}
|
||||
} else {
|
||||
qDebug() << "Couldn't sent an encrypted message";
|
||||
handlePendingMessageError(id, "Error sending successfully encrypted message");
|
||||
}
|
||||
} else if (std::holds_alternative<QXmppError>(result)) {
|
||||
qDebug() << "Couldn't encrypt a message";
|
||||
const QXmppError& err = std::get<QXmppError>(result);
|
||||
handlePendingMessageError(id, err.description);
|
||||
} else {
|
||||
qDebug() << "Couldn't encrypt a message";
|
||||
handlePendingMessageError(id, "Unexpected error ecryptng the message");
|
||||
}
|
||||
});
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue