Program: 39738
Project: 39738
Buggy source:
private void checkConversations(String username,final boolean isStart){
  if (null != mIMConversations && !mIMConversations.isEmpty()) {
    for (    BmobIMConversation conversationEntrance : mIMConversations) {
      if (conversationEntrance.getConversationTitle().equals(username)) {
        mConversationManager=BmobIMConversation.obtain(BmobIMClient.getInstance(),conversationEntrance);
        if (isStart)         sendToOpenSharedMap();
 else         sendToCloseShareMap();
      }
    }
  }
 else {
    BmobUtil.query(username,new BmobEvent.onQueryListener(){
      @Override public boolean beforeQuery(){
        return true;
      }
      @Override public void querySuccessful(      final List<User> list){
        BmobUtil.connect(list.get(0),new BmobEvent.onConnectListener(){
          @Override public void connectSuccessful(          User user){
            BmobIMUserInfo info=new BmobIMUserInfo(user.getObjectId(),user.getUsername(),null);
            BmobIMConversation conversationEntrance=BmobIM.getInstance().startPrivateConversation(info,null);
            mIMConversations.add(conversationEntrance);
            mConversationManager=BmobIMConversation.obtain(BmobIMClient.getInstance(),conversationEntrance);
            if (isStart)             sendToOpenSharedMap();
 else             sendToCloseShareMap();
          }
          @Override public void connectFailed(          String error){
            toast(error);
          }
        }
);
      }
      @Override public void queryFailed(      BmobException e){
        toast(e.getMessage());
      }
    }
);
  }
}

Fixed version (ground truth):
private void checkConversations(String username,final boolean isStart){
  if (null != mIMConversations && !mIMConversations.isEmpty()) {
    L.i("String_Node_Str");
    for (    BmobIMConversation conversationEntrance : mIMConversations) {
      if (conversationEntrance.getConversationTitle().equals(username)) {
        mConversationManager=BmobIMConversation.obtain(BmobIMClient.getInstance(),conversationEntrance);
        if (isStart)         sendToOpenSharedMap();
 else         sendToCloseShareMap();
      }
    }
  }
 else {
    BmobUtil.query(username,new BmobEvent.onQueryListener(){
      @Override public boolean beforeQuery(){
        return true;
      }
      @Override public void querySuccessful(      final List<User> list){
        BmobUtil.connect(list.get(0),new BmobEvent.onConnectListener(){
          @Override public void connectSuccessful(          User user){
            BmobIMUserInfo info=new BmobIMUserInfo(user.getObjectId(),user.getUsername(),null);
            BmobIMConversation conversationEntrance=BmobIM.getInstance().startPrivateConversation(info,null);
            mIMConversations.add(conversationEntrance);
            mConversationManager=BmobIMConversation.obtain(BmobIMClient.getInstance(),conversationEntrance);
            if (isStart)             sendToOpenSharedMap();
 else             sendToCloseShareMap();
          }
          @Override public void connectFailed(          String error){
            toast(error);
          }
        }
);
      }
      @Override public void queryFailed(      BmobException e){
        toast(e.getMessage());
      }
    }
);
  }
}