Program: 103327
Project: 103327
Buggy source:
/** 
 * Method called back in the RemoteListener to notify listener of all RTP Remote Events.RemoteEvents are one of ReceiverReportEvent, SenderReportEvent or RemoteCollisionEvent
 * @param remoteEvent the event
 */
public void update(RemoteEvent remoteEvent){
  if (!logger.isInfoEnabled())   return;
  if (remoteEvent instanceof SenderReportEvent) {
    numberOfReceivedSenderReports++;
    SenderReport report=((SenderReportEvent)remoteEvent).getReport();
    if (report.getFeedbackReports().size() > 0) {
      Feedback feedback=(Feedback)report.getFeedbackReports().get(0);
      long remoteJitter=feedback.getJitter();
      if (remoteJitter < minRemoteInterArrivalJitter || minRemoteInterArrivalJitter == -1)       minRemoteInterArrivalJitter=remoteJitter;
      if (maxRemoteInterArrivalJitter < remoteJitter)       maxRemoteInterArrivalJitter=remoteJitter;
      if (numberOfReceivedSenderReports % 4 != 1)       return;
      StringBuilder buff=new StringBuilder(StatisticsEngine.RTP_STAT_PREFIX);
      MediaFormat format=getFormat();
      buff.append("String_Node_Str").append((format == null) ? "String_Node_Str" : format.getMediaType().toString()).append("String_Node_Str").append(getLocalSourceID()).append("String_Node_Str").append(report.getSenderPacketCount()).append("String_Node_Str").append(report.getSenderByteCount()).append("String_Node_Str").append(remoteJitter).append("String_Node_Str").append(feedback.getNumLost()).append("String_Node_Str").append((int)(feedback.getDLSR() / 65.536)).append("String_Node_Str");
      logger.info(buff);
    }
  }
}

Fixed version (ground truth):
/** 
 * Method called back in the RemoteListener to notify listener of all RTP Remote Events.RemoteEvents are one of ReceiverReportEvent, SenderReportEvent or RemoteCollisionEvent
 * @param remoteEvent the event
 */
public void update(RemoteEvent remoteEvent){
  if (!logger.isInfoEnabled())   return;
  if (remoteEvent instanceof SenderReportEvent) {
    numberOfReceivedSenderReports++;
    SenderReport report=((SenderReportEvent)remoteEvent).getReport();
    Feedback feedback=null;
    long remoteJitter=-1;
    if (report.getFeedbackReports().size() > 0) {
      feedback=(Feedback)report.getFeedbackReports().get(0);
      remoteJitter=feedback.getJitter();
      if (remoteJitter < minRemoteInterArrivalJitter || minRemoteInterArrivalJitter == -1)       minRemoteInterArrivalJitter=remoteJitter;
      if (maxRemoteInterArrivalJitter < remoteJitter)       maxRemoteInterArrivalJitter=remoteJitter;
    }
    if (numberOfReceivedSenderReports % 4 != 1)     return;
    StringBuilder buff=new StringBuilder(StatisticsEngine.RTP_STAT_PREFIX);
    MediaFormat format=getFormat();
    buff.append("String_Node_Str").append((format == null) ? "String_Node_Str" : format.getMediaType().toString()).append("String_Node_Str").append(getLocalSourceID()).append("String_Node_Str").append(report.getSenderPacketCount()).append("String_Node_Str").append(report.getSenderByteCount());
    if (feedback != null) {
      buff.append("String_Node_Str").append(remoteJitter).append("String_Node_Str").append(feedback.getNumLost()).append("String_Node_Str").append((int)(feedback.getDLSR() / 65.536)).append("String_Node_Str");
    }
    buff.append("String_Node_Str");
    logger.info(buff);
  }
}