Program: 103220
Project: 103220
Buggy source:
/** 
 * Notifies this <tt>MethodProcessorListener</tt> that the procedure for handling an INVITE or reINVITE SIP <tt>Request</tt> has completed and it is appropriate to determine whether the remote <tt>CallPeer</tt> is a conference focus.
 * @param sourceCallPeer the <tt>CallPeer</tt> with which the procedure forhandling an INVITE or reINVITE SIP <tt>Request</tt> has finished negotiating
 * @param remoteMessage the remote SIP <tt>Message</tt> which was received,processed and which prompted sending a specific local SIP <tt>Message</tt>
 * @param localMessage the local SIP <tt>Message</tt> which was sent to the<tt>CallPeer</tt> as part of the processing of its remote SIP <tt>Message</tt>
 */
private void inviteCompleted(CallPeerSipImpl sourceCallPeer,Message remoteMessage,Message localMessage){
  ContactHeader contactHeader=(ContactHeader)remoteMessage.getHeader(ContactHeader.NAME);
  boolean conferenceFocus=false;
  if (contactHeader != null) {
    Iterator<?> parameterNameIter=contactHeader.getParameterNames();
    while (parameterNameIter.hasNext())     if ("String_Node_Str".equalsIgnoreCase(parameterNameIter.next().toString())) {
      conferenceFocus=true;
      break;
    }
  }
  sourceCallPeer.setConferenceFocus(conferenceFocus);
  if (conferenceFocus) {
    ConferenceSubscriberSubscription subscription=new ConferenceSubscriberSubscription(sourceCallPeer);
    try {
      subscriber.subscribe(subscription);
    }
 catch (    OperationFailedException ofe) {
      logger.error("String_Node_Str" + sourceCallPeer,ofe);
    }
  }
}

Fixed version (ground truth):
/** 
 * Notifies this <tt>MethodProcessorListener</tt> that the procedure for handling an INVITE or reINVITE SIP <tt>Request</tt> has completed and it is appropriate to determine whether the remote <tt>CallPeer</tt> is a conference focus.
 * @param sourceCallPeer the <tt>CallPeer</tt> with which the procedure forhandling an INVITE or reINVITE SIP <tt>Request</tt> has finished negotiating
 * @param remoteMessage the remote SIP <tt>Message</tt> which was received,processed and which prompted sending a specific local SIP <tt>Message</tt>
 * @param localMessage the local SIP <tt>Message</tt> which was sent to the<tt>CallPeer</tt> as part of the processing of its remote SIP <tt>Message</tt>
 */
private void inviteCompleted(CallPeerSipImpl sourceCallPeer,Message remoteMessage,Message localMessage){
  ContactHeader contactHeader=(ContactHeader)remoteMessage.getHeader(ContactHeader.NAME);
  boolean conferenceFocus=false;
  if (contactHeader != null) {
    Iterator<?> parameterNameIter=contactHeader.getParameterNames();
    while (parameterNameIter.hasNext())     if ("String_Node_Str".equalsIgnoreCase(parameterNameIter.next().toString())) {
      conferenceFocus=true;
      break;
    }
  }
  sourceCallPeer.addCallPeerListener(callPeerStateListener);
  sourceCallPeer.setConferenceFocus(conferenceFocus);
  if (sourceCallPeer.isConferenceFocus() && sourceCallPeer.getState() == CallPeerState.CONNECTED) {
    ConferenceSubscriberSubscription subscription=new ConferenceSubscriberSubscription(sourceCallPeer);
    try {
      subscriber.subscribe(subscription);
    }
 catch (    OperationFailedException ofe) {
      logger.error("String_Node_Str" + sourceCallPeer,ofe);
    }
  }
}