aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoriNPUTmice <daniel@gultsch.de>2014-09-08 12:51:01 +0200
committeriNPUTmice <daniel@gultsch.de>2014-09-08 12:51:01 +0200
commit3b9fd28ef4b8c615ec27c7265c2e38dfa31d41fd (patch)
treec5b9b40eeed1795b29de980f4a40c50eb8d13752
parent19f98f5143059d48bfb1fac9b376acec9cf412b2 (diff)
don't fail displayed or received messages
-rw-r--r--src/eu/siacs/conversations/services/XmppConnectionService.java32
1 files changed, 17 insertions, 15 deletions
diff --git a/src/eu/siacs/conversations/services/XmppConnectionService.java b/src/eu/siacs/conversations/services/XmppConnectionService.java
index fc885d70..8165c37f 100644
--- a/src/eu/siacs/conversations/services/XmppConnectionService.java
+++ b/src/eu/siacs/conversations/services/XmppConnectionService.java
@@ -516,8 +516,8 @@ public class XmppConnectionService extends Service {
if (message.getEncryption() == Message.ENCRYPTION_OTR) {
if (!conv.hasValidOtrSession()
&& (message.getPresence() != null)) {
- conv.startOtrSession(this,
- message.getPresence(), true);
+ conv.startOtrSession(this, message.getPresence(),
+ true);
message.setStatus(Message.STATUS_WAITING);
} else if (conv.hasValidOtrSession()
&& conv.getOtrSession().getSessionStatus() == SessionStatus.ENCRYPTED) {
@@ -536,8 +536,7 @@ public class XmppConnectionService extends Service {
if (message.getEncryption() == Message.ENCRYPTION_OTR) {
if (!conv.hasValidOtrSession()
&& (message.getPresence() != null)) {
- conv.startOtrSession(this,
- message.getPresence(), true);
+ conv.startOtrSession(this, message.getPresence(), true);
message.setStatus(Message.STATUS_WAITING);
} else if (conv.hasValidOtrSession()
&& conv.getOtrSession().getSessionStatus() == SessionStatus.ENCRYPTED) {
@@ -577,8 +576,7 @@ public class XmppConnectionService extends Service {
.getUserID());
} else if (!conv.hasValidOtrSession()
&& message.getPresence() != null) {
- conv.startOtrSession(this,
- message.getPresence(), false);
+ conv.startOtrSession(this, message.getPresence(), false);
}
}
}
@@ -616,14 +614,13 @@ public class XmppConnectionService extends Service {
if (!message.getConversation().hasValidOtrSession()) {
if ((message.getPresence() != null)
&& (presences.has(message.getPresence()))) {
- message.getConversation().startOtrSession(
- this, message.getPresence(),
- true);
+ message.getConversation().startOtrSession(this,
+ message.getPresence(), true);
} else {
if (presences.size() == 1) {
String presence = presences.asStringArray()[0];
- message.getConversation().startOtrSession(
- this, presence, true);
+ message.getConversation().startOtrSession(this,
+ presence, true);
}
}
} else {
@@ -1099,8 +1096,8 @@ public class XmppConnectionService extends Service {
public void providePasswordForMuc(Conversation conversation, String password) {
if (conversation.getMode() == Conversation.MODE_MULTI) {
conversation.getMucOptions().setPassword(password);
- if (conversation.getBookmark() != null &&
- conversation.getMucOptions().isPasswordChanged()) {
+ if (conversation.getBookmark() != null
+ && conversation.getMucOptions().isPasswordChanged()) {
if (!conversation.getBookmark().autojoin()) {
conversation.getBookmark().setAutojoin(true);
}
@@ -1399,12 +1396,12 @@ public class XmppConnectionService extends Service {
return;
}
} else {
-
+
Log.d(Config.LOGTAG, ERROR + "(parsing error)");
}
} else {
Element error = result.findChild("error");
- if (error==null) {
+ if (error == null) {
Log.d(Config.LOGTAG, ERROR + "(server error)");
} else {
Log.d(Config.LOGTAG, ERROR + error.toString());
@@ -1531,6 +1528,11 @@ public class XmppConnectionService extends Service {
}
public void markMessage(Message message, int status) {
+ if (status == Message.STATUS_SEND_FAILED
+ && (message.getStatus() == Message.STATUS_SEND_RECEIVED || message
+ .getStatus() == Message.STATUS_SEND_DISPLAYED)) {
+ return;
+ }
message.setStatus(status);
databaseBackend.updateMessage(message);
updateConversationUi();