Program: 46276
Project: 46276
Buggy source:
@Override public void handleMessage(Message message){
  logger.fine("String_Node_Str");
  if (message instanceof GetVoiceBridgeMessage) {
    GetVoiceBridgeMessage msg=(GetVoiceBridgeMessage)message;
    logger.fine("String_Node_Str" + msg.getBridgeInfo());
    SoftphoneControlImpl sc=SoftphoneControlImpl.getInstance();
    String tokens[]=msg.getBridgeInfo().split("String_Node_Str");
    String registrarAddress=tokens[5] + "String_Node_Str";
    registrarAddress+=tokens[7];
    String localAddress=null;
    try {
      InetAddress ia=NetworkAddress.getPrivateLocalAddress("String_Node_Str" + tokens[5] + "String_Node_Str"+ tokens[7]+ "String_Node_Str");
      localAddress=ia.getHostAddress();
    }
 catch (    UnknownHostException e) {
      logger.warning(e.getMessage());
    }
    if (localAddress != null) {
      try {
        String sipURL=sc.startSoftphone(msg.getUsername(),registrarAddress,10,localAddress,AudioQuality.VPN);
        CellID cellID=((CellClientSession)session).getLocalAvatar().getViewCell().getCellID();
        logger.fine("String_Node_Str" + cellID.toString());
        sc.setCallID(cellID.toString());
        session.send(this,new PlaceCallMessage(cellID.toString(),sipURL,0.,0.,0.,90.,false));
      }
 catch (      IOException e) {
        logger.warning(e.getMessage());
      }
    }
 else {
      logger.warning("String_Node_Str");
      connectSoftphone();
    }
  }
 else   if (message instanceof VoiceChatJoinRequestMessage) {
    VoiceChatJoinRequestMessage msg=(VoiceChatJoinRequestMessage)message;
    VoiceChatDialog voiceChatDialog=VoiceChatDialog.getVoiceChatDialog(msg.getGroup());
    if (voiceChatDialog == null) {
      CellID cellID=((CellClientSession)session).getLocalAvatar().getViewCell().getCellID();
      voiceChatDialog=new VoiceChatDialog(this,session,cellID);
    }
    voiceChatDialog.requestToJoin(msg.getGroup(),msg.getCaller(),msg.getCalleeList(),msg.getChatType());
  }
 else   if (message instanceof VoiceChatBusyMessage) {
    VoiceChatBusyMessage msg=(VoiceChatBusyMessage)message;
    new VoiceChatBusyDialog(msg.getGroup(),msg.getCaller());
  }
 else   if (message instanceof VoiceChatInfoResponseMessage) {
    VoiceChatInfoResponseMessage msg=(VoiceChatInfoResponseMessage)message;
    VoiceChatDialog voiceChatDialog=VoiceChatDialog.getVoiceChatDialog(msg.getGroup());
    logger.fine("String_Node_Str" + msg.getChatInfo());
    if (voiceChatDialog == null) {
      logger.warning("String_Node_Str" + msg.getGroup());
    }
 else {
      voiceChatDialog.setChatters(msg.getChatInfo());
    }
  }
 else   if (message instanceof SpeakingMessage) {
    SpeakingMessage msg=(SpeakingMessage)message;
    logger.info("String_Node_Str" + msg.getCallID() + (msg.isSpeaking() ? "String_Node_Str" : "String_Node_Str"));
  }
 else   if (message instanceof GetUserListMessage) {
    if (userListJFrame == null) {
      userListJFrame=new UserListJFrame(((GetUserListMessage)message).getLocation());
    }
    ArrayList<String> userList=((GetUserListMessage)message).getUserList();
    String s="String_Node_Str";
    for (    String user : userList) {
      s+=user + "String_Node_Str";
    }
    userListJFrame.setListData(userList.toArray(new String[0]));
    userListJFrame.setVisible(true);
  }
 else {
    throw new UnsupportedOperationException("String_Node_Str");
  }
}

Fixed version (ground truth):
@Override public void handleMessage(Message message){
  logger.fine("String_Node_Str");
  if (message instanceof GetVoiceBridgeMessage) {
    GetVoiceBridgeMessage msg=(GetVoiceBridgeMessage)message;
    logger.fine("String_Node_Str" + msg.getBridgeInfo());
    SoftphoneControlImpl sc=SoftphoneControlImpl.getInstance();
    String tokens[]=msg.getBridgeInfo().split("String_Node_Str");
    String registrarAddress=tokens[5] + "String_Node_Str";
    registrarAddress+=tokens[7];
    String localAddress=null;
    try {
      InetAddress ia=NetworkAddress.getPrivateLocalAddress("String_Node_Str" + tokens[5] + "String_Node_Str"+ tokens[7]+ "String_Node_Str");
      localAddress=ia.getHostAddress();
    }
 catch (    UnknownHostException e) {
      logger.warning(e.getMessage());
    }
    if (localAddress != null) {
      try {
        String sipURL=sc.startSoftphone(msg.getUsername(),registrarAddress,10,localAddress,AudioQuality.VPN);
        CellID cellID=((CellClientSession)session).getLocalAvatar().getViewCell().getCellID();
        logger.fine("String_Node_Str" + cellID.toString());
        sc.setCallID(cellID.toString());
        session.send(this,new PlaceCallMessage(cellID.toString(),sipURL,0.,0.,0.,90.,false));
      }
 catch (      IOException e) {
        logger.warning(e.getMessage());
      }
    }
 else {
      logger.warning("String_Node_Str");
      connectSoftphone();
    }
  }
 else   if (message instanceof VoiceChatJoinRequestMessage) {
    VoiceChatJoinRequestMessage msg=(VoiceChatJoinRequestMessage)message;
    VoiceChatDialog voiceChatDialog=VoiceChatDialog.getVoiceChatDialog(msg.getGroup());
    if (voiceChatDialog == null) {
      CellID cellID=((CellClientSession)session).getLocalAvatar().getViewCell().getCellID();
      voiceChatDialog=new VoiceChatDialog(this,session,cellID);
    }
    voiceChatDialog.requestToJoin(msg.getGroup(),msg.getCaller(),msg.getCalleeList(),msg.getChatType());
  }
 else   if (message instanceof VoiceChatBusyMessage) {
    VoiceChatBusyMessage msg=(VoiceChatBusyMessage)message;
    new VoiceChatBusyDialog(msg.getGroup(),msg.getCaller());
  }
 else   if (message instanceof VoiceChatInfoResponseMessage) {
    VoiceChatInfoResponseMessage msg=(VoiceChatInfoResponseMessage)message;
    VoiceChatDialog voiceChatDialog=VoiceChatDialog.getVoiceChatDialog(msg.getGroup());
    logger.fine("String_Node_Str" + msg.getChatInfo());
    if (voiceChatDialog == null) {
      logger.warning("String_Node_Str" + msg.getGroup());
    }
 else {
      voiceChatDialog.setChatters(msg.getChatInfo());
    }
  }
 else   if (message instanceof SpeakingMessage) {
    SpeakingMessage msg=(SpeakingMessage)message;
    logger.info("String_Node_Str" + msg.getCallID() + (msg.isSpeaking() ? "String_Node_Str" : "String_Node_Str"));
    if (userListJFrame != null) {
      userListJFrame.setSpeaking(msg.getCallID(),msg.isSpeaking());
    }
  }
 else   if (message instanceof GetUserListMessage) {
    if (userListJFrame == null) {
      userListJFrame=new UserListJFrame(((GetUserListMessage)message).getLocation());
      new UserListUpdater(this);
    }
    ArrayList<String> userList=((GetUserListMessage)message).getUserList();
    String s="String_Node_Str";
    for (    String user : userList) {
      s+=user + "String_Node_Str";
    }
    userList.remove("String_Node_Str");
    userListJFrame.setListData(userList.toArray(new String[0]));
    userListJFrame.setVisible(true);
  }
 else   if (message instanceof MuteCallMessage) {
    MuteCallMessage msg=(MuteCallMessage)message;
    if (userListJFrame != null) {
      userListJFrame.setMute(msg.getCallID(),msg.isMuted());
    }
  }
 else {
    throw new UnsupportedOperationException("String_Node_Str");
  }
}