diff options
author | Michael Vetter <jubalh@iodoru.org> | 2020-10-30 15:09:40 +0100 |
---|---|---|
committer | Michael Vetter <jubalh@iodoru.org> | 2020-10-30 15:09:40 +0100 |
commit | 3b3c9bf4d5e46da4c3751809a4e724870ea38a02 (patch) | |
tree | ba2f8662bd268542e3d57578fe5758178418376f | |
parent | 15f45fcfe1b5a4f9c8419eb153b71a9e33c09870 (diff) | |
download | profani-tty-3b3c9bf4d5e46da4c3751809a4e724870ea38a02.tar.gz |
Print all error stanzas
Regards https://github.com/profanity-im/profanity/issues/1435 So far we didn't print the error if it contained `<error type="cancel">`. It appears that the code always thought this is a service-not-available (so one is either blocked or the account doesn't exist) and printed `Recipient not found`. But there can be other errors as well. Like in above mentioned issue `not-allowed`. Let's just print the text. In case of the cancel type we still remove the jid from the chat sessions. I'm not entirely sure whether this needs to be done in other cases too.
-rw-r--r-- | src/xmpp/message.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/xmpp/message.c b/src/xmpp/message.c index 8e13039c..4bbddc72 100644 --- a/src/xmpp/message.c +++ b/src/xmpp/message.c @@ -824,12 +824,12 @@ _handle_error(xmpp_stanza_t* const stanza) if (!jid) { ui_handle_error(err_msg); - } else if (type && (strcmp(type, "cancel") == 0)) { - log_info("Recipient %s not found: %s", jid, err_msg); - Jid* jidp = jid_create(jid); - chat_session_remove(jidp->barejid); - jid_destroy(jidp); } else { + if (type && (strcmp(type, "cancel") == 0)) { + Jid* jidp = jid_create(jid); + chat_session_remove(jidp->barejid); + jid_destroy(jidp); + } ui_handle_recipient_error(jid, err_msg); } |