Fixing crash on chatroom delete

This commit is contained in:
Erwan Croze 2017-09-12 14:24:13 +02:00
parent 184d5eaae4
commit d915a07f3e

View file

@ -101,6 +101,8 @@ import java.util.Comparator;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
import static org.linphone.LinphoneActivity.ChatRoomContainer.createChatroomContainer;
/** /**
* @author Sylvain Berfini * @author Sylvain Berfini
*/ */
@ -836,10 +838,14 @@ public class LinphoneActivity extends LinphoneGenericActivity implements OnClick
static class ChatRoomContainer{ static class ChatRoomContainer{
private LinphoneChatRoom mCr; private LinphoneChatRoom mCr;
long mTime; long mTime;
static public ChatRoomContainer createChatroomContainer(LinphoneChatRoom chatRoom) {
if (chatRoom.getHistorySize() <= 0) return null;
return new ChatRoomContainer(chatRoom);
}
public ChatRoomContainer(LinphoneChatRoom chatroom){ public ChatRoomContainer(LinphoneChatRoom chatroom){
mCr = chatroom; mCr = chatroom;
LinphoneChatMessage[] lastMsg = chatroom.getHistory(1); LinphoneChatMessage[] lastMsg = chatroom.getHistory(1);
if (lastMsg != null && lastMsg[0] != null) { if (lastMsg != null && lastMsg.length > 0 && lastMsg[0] != null) {
mTime = lastMsg[0].getTime(); mTime = lastMsg[0].getTime();
}else mTime = 0; }else mTime = 0;
} }
@ -857,7 +863,8 @@ public class LinphoneActivity extends LinphoneGenericActivity implements OnClick
List<ChatRoomContainer> rooms = new ArrayList<ChatRoomContainer>(); List<ChatRoomContainer> rooms = new ArrayList<ChatRoomContainer>();
for (LinphoneChatRoom chatroom : chats) { for (LinphoneChatRoom chatroom : chats) {
rooms.add(new ChatRoomContainer(chatroom)); ChatRoomContainer crc = createChatroomContainer(chatroom);
if (crc != null) rooms.add(crc);
} }
if (rooms.size() > 1) { if (rooms.size() > 1) {