Merge pull request #802 from SamWhited/blockingfix

Daniel Gultsch created

Fix NPEs in blocking code

Change summary

src/main/java/eu/siacs/conversations/ui/ConversationActivity.java | 4 
src/main/java/eu/siacs/conversations/ui/EditAccountActivity.java  | 2 
2 files changed, 4 insertions(+), 2 deletions(-)

Detailed changes

src/main/java/eu/siacs/conversations/ui/ConversationActivity.java 🔗

@@ -31,6 +31,7 @@ import java.util.ArrayList;
 import java.util.List;
 
 import eu.siacs.conversations.R;
+import eu.siacs.conversations.entities.Account;
 import eu.siacs.conversations.entities.Blockable;
 import eu.siacs.conversations.entities.Contact;
 import eu.siacs.conversations.entities.Conversation;
@@ -316,7 +317,8 @@ public class ConversationActivity extends XmppActivity
 					} else {
 						menuUnblock.setVisible(false);
 					}
-					if (!this.getSelectedConversation().getAccount().getXmppConnection().getFeatures().blocking()) {
+					final Account account = this.getSelectedConversation().getAccount();
+					if (account.getStatus() != Account.State.ONLINE || !account.getXmppConnection().getFeatures().blocking()) {
 						menuBlock.setVisible(false);
 						menuUnblock.setVisible(false);
 					}

src/main/java/eu/siacs/conversations/ui/EditAccountActivity.java 🔗

@@ -327,7 +327,7 @@ public class EditAccountActivity extends XmppActivity implements OnAccountUpdate
 		if (mAccount == null) {
 			showQrCode.setVisible(false);
 			showBlocklist.setVisible(false);
-		} else if (!mAccount.getXmppConnection().getFeatures().blocking()) {
+		} else if (mAccount.getStatus() != Account.State.ONLINE || !mAccount.getXmppConnection().getFeatures().blocking()) {
 			showBlocklist.setVisible(false);
 		}
 		return true;