Program: 79745
Project: 79745
Buggy source:
LogEntry(int tool,boolean messageIsRequest,IHttpRequestResponsePersisted requestResponse,URL url,IRequestInfo tempAnalyzedReq,IInterceptedProxyMessage message,Table table,LoggerPreferences loggerPreferences,PrintWriter stdout,PrintWriter stderr,boolean isDebug,IBurpExtenderCallbacks callbacks){
  this.stdout=stdout;
  this.stderr=stderr;
  this.isDebug=isDebug;
  this.loggerPreferences=loggerPreferences;
  this.callbacks=callbacks;
  this.table=table;
  this.callbacks=callbacks;
  this.helpers=callbacks.getHelpers();
  IHttpService tempRequestResponseHttpService=requestResponse.getHttpService();
  String strFullRequest=new String(requestResponse.getRequest());
  List<String> lstFullRequestHeader=tempAnalyzedReq.getHeaders();
  if (table.getModel().getTableHeaderColumnsDetails().isTableHeaderEnabled_byName("String_Node_Str"))   this.uniqueIdentifier=java.util.UUID.randomUUID().toString();
  this.tool=tool;
  this.requestResponse=requestResponse;
  this.url=url;
  if (table.getModel().getTableHeaderColumnsDetails().isTableHeaderEnabled_byName("String_Node_Str"))   this.relativeURL=url.getFile();
  this.host=tempRequestResponseHttpService.getHost();
  this.protocol=tempRequestResponseHttpService.getProtocol();
  this.isSSL=this.protocol.equals("String_Node_Str");
  if (table.getModel().getTableHeaderColumnsDetails().isTableHeaderEnabled_byName("String_Node_Str"))   this.targetPort=tempRequestResponseHttpService.getPort();
  if (table.getModel().getTableHeaderColumnsDetails().isTableHeaderEnabled_byName("String_Node_Str"))   this.method=tempAnalyzedReq.getMethod();
  try {
    String tempPath=url.getPath().replaceAll("String_Node_Str","String_Node_Str");
    tempPath=tempPath.substring(tempPath.lastIndexOf("String_Node_Str"));
    int tempPathDotLocation=tempPath.lastIndexOf("String_Node_Str");
    if (tempPathDotLocation >= 0)     this.urlExtension=tempPath.substring(tempPathDotLocation + 1);
  }
 catch (  Exception e) {
    if (isDebug)     stderr.println(e.getMessage());
    this.urlExtension="String_Node_Str";
  }
  if (message != null) {
    if (isDebug) {
    }
    if (table.getModel().getTableHeaderColumnsDetails().isTableHeaderEnabled_byName("String_Node_Str"))     this.listenerInterface=message.getListenerInterface();
    if (table.getModel().getTableHeaderColumnsDetails().isTableHeaderEnabled_byName("String_Node_Str"))     this.clientIP=message.getClientIpAddress().toString();
    if (table.getModel().getTableHeaderColumnsDetails().isTableHeaderEnabled_byName("String_Node_Str"))     this.uniqueIdentifier="String_Node_Str" + String.valueOf(message.getMessageReference());
  }
  this.requestLength=strFullRequest.length() - tempAnalyzedReq.getBodyOffset();
  this.hasQueryStringParam=(url.getQuery() != null) ? true : false;
  this.hasBodyParam=(requestLength > 0) ? true : false;
  this.params=(this.hasQueryStringParam || this.hasBodyParam) ? true : false;
  this.hasCookieParam=false;
  if (table.getModel().getTableHeaderColumnsDetails().isTableHeaderEnabled_byName("String_Node_Str") || table.getModel().getTableHeaderColumnsDetails().isTableHeaderEnabled_byName("String_Node_Str") || table.getModel().getTableHeaderColumnsDetails().isTableHeaderEnabled_byName("String_Node_Str")|| table.getModel().getTableHeaderColumnsDetails().isTableHeaderEnabled_byName("String_Node_Str")|| table.getModel().getTableHeaderColumnsDetails().isTableHeaderEnabled_byName("String_Node_Str")) {
    for (    String item : lstFullRequestHeader) {
      if (item.indexOf("String_Node_Str") >= 0) {
        String[] headerItem=item.split("String_Node_Str",2);
        headerItem[0]=headerItem[0].toLowerCase();
        if (headerItem[0].equals("String_Node_Str")) {
          this.sentCookies=headerItem[1];
          if (!this.sentCookies.isEmpty()) {
            this.hasCookieParam=true;
            this.sentCookies+="String_Node_Str";
            if (table.getModel().getTableHeaderColumnsDetails().isTableHeaderEnabled_byName("String_Node_Str")) {
              List<ICookie> cookieJars=callbacks.getCookieJarContents();
              boolean atLeastOneDidNotMatched=false;
              boolean anyParamMatched=false;
              for (              ICookie cookieItem : cookieJars) {
                if (cookieItem.getDomain().equals(this.host)) {
                  String currentCookieJarParam=cookieItem.getName() + "String_Node_Str" + cookieItem.getValue()+ "String_Node_Str";
                  if (this.sentCookies.contains(currentCookieJarParam)) {
                    anyParamMatched=true;
                  }
 else {
                    atLeastOneDidNotMatched=true;
                  }
                }
                if (anyParamMatched && atLeastOneDidNotMatched) {
                  break;
                }
              }
              if (atLeastOneDidNotMatched && anyParamMatched) {
                this.usesCookieJar=cookieJarStatus.PARTIALLY;
              }
 else               if (!atLeastOneDidNotMatched && anyParamMatched) {
                this.usesCookieJar=cookieJarStatus.YES;
              }
            }
          }
        }
 else         if (headerItem[0].equals("String_Node_Str")) {
          this.referrerURL=headerItem[1];
        }
 else         if (headerItem[0].equals("String_Node_Str")) {
          this.requstContentType=headerItem[1];
        }
      }
    }
  }
  for (int i=0; i <= 5; i++) {
    String regexVarName="String_Node_Str" + String.valueOf(i + 1) + "String_Node_Str";
    if (table.getModel().getTableHeaderColumnsDetails().isTableHeaderEnabled_byName(regexVarName)) {
      TableStructure regexColumn=table.getModel().getTableHeaderColumnsDetails().getEnabledTableHeader_byName(regexVarName);
      String regexString=regexColumn.getRegExData().getRegExString();
      if (!regexString.isEmpty()) {
        Pattern p=null;
        try {
          if (regexColumn.getRegExData().isRegExCaseSensitive())           p=Pattern.compile(regexString);
 else           p=Pattern.compile(regexString,Pattern.CASE_INSENSITIVE);
          Matcher m=p.matcher(strFullRequest);
          StringBuilder allMatches=new StringBuilder();
          int counter=1;
          while (m.find()) {
            if (counter == 2) {
              allMatches.insert(0,"String_Node_Str");
              allMatches.append("String_Node_Str");
            }
            if (counter > 1) {
              allMatches.append("String_Node_Str" + m.group() + "String_Node_Str");
            }
 else {
              allMatches.append(m.group());
            }
            counter++;
          }
          this.regexAllReq[i]=allMatches.toString();
        }
 catch (        Exception e) {
          stderr.println("String_Node_Str" + regexString);
        }
      }
    }
  }
  if (!messageIsRequest) {
    IResponseInfo tempAnalyzedResp=helpers.analyzeResponse(requestResponse.getResponse());
    String strFullResponse=new String(requestResponse.getResponse());
    List<String> lstFullResponseHeader=tempAnalyzedResp.getHeaders();
    this.status=tempAnalyzedResp.getStatusCode();
    if (table.getModel().getTableHeaderColumnsDetails().isTableHeaderEnabled_byName("String_Node_Str"))     this.responseContentType_burp=tempAnalyzedResp.getStatedMimeType();
    if (table.getModel().getTableHeaderColumnsDetails().isTableHeaderEnabled_byName("String_Node_Str"))     this.responseInferredContentType_burp=tempAnalyzedResp.getInferredMimeType();
    this.responseLength=strFullResponse.length() - tempAnalyzedResp.getBodyOffset();
    if (table.getModel().getTableHeaderColumnsDetails().isTableHeaderEnabled_byName("String_Node_Str"))     for (    ICookie cookieItem : tempAnalyzedResp.getCookies()) {
      this.newCookies+=cookieItem.getName() + "String_Node_Str" + cookieItem.getValue()+ "String_Node_Str";
    }
    this.hasSetCookies=(!newCookies.isEmpty()) ? true : false;
    DateFormat dateFormat=new SimpleDateFormat("String_Node_Str");
    Date date=new Date();
    this.responseTime=dateFormat.format(date);
    if (table.getModel().getTableHeaderColumnsDetails().isTableHeaderEnabled_byName("String_Node_Str")) {
      for (      String item : lstFullResponseHeader) {
        item=item.toLowerCase();
        if (item.startsWith("String_Node_Str")) {
          String[] temp=item.split("String_Node_Str",2);
          if (temp.length > 0)           this.responseContentType=temp[1];
        }
      }
    }
    for (int i=0; i <= 5; i++) {
      String regexVarName="String_Node_Str" + String.valueOf(i + 1) + "String_Node_Str";
      if (table.getModel().getTableHeaderColumnsDetails().isTableHeaderEnabled_byName(regexVarName)) {
        TableStructure regexColumn=table.getModel().getTableHeaderColumnsDetails().getEnabledTableHeader_byName(regexVarName);
        String regexString=regexColumn.getRegExData().getRegExString();
        if (!regexString.isEmpty()) {
          Pattern p=null;
          try {
            if (regexColumn.getRegExData().isRegExCaseSensitive())             p=Pattern.compile(regexString);
 else             p=Pattern.compile(regexString,Pattern.CASE_INSENSITIVE);
            Matcher m=p.matcher(strFullResponse);
            StringBuilder allMatches=new StringBuilder();
            int counter=1;
            while (m.find()) {
              if (counter == 2) {
                allMatches.insert(0,"String_Node_Str");
                allMatches.append("String_Node_Str");
              }
              if (counter > 1) {
                allMatches.append("String_Node_Str" + m.group() + "String_Node_Str");
              }
 else {
                allMatches.append(m.group());
              }
              counter++;
            }
            this.regexAllResp[i]=allMatches.toString();
          }
 catch (          Exception e) {
            stderr.println("String_Node_Str" + regexString);
          }
        }
      }
    }
    this.isCompleted=true;
    tempAnalyzedResp=null;
  }
  this.comment="String_Node_Str";
  tempRequestResponseHttpService=null;
  tempAnalyzedReq=null;
}

Fixed version (ground truth):
LogEntry(int tool,boolean messageIsRequest,IHttpRequestResponsePersisted requestResponse,URL url,IRequestInfo tempAnalyzedReq,IInterceptedProxyMessage message,Table table,LoggerPreferences loggerPreferences,PrintWriter stdout,PrintWriter stderr,boolean isDebug,IBurpExtenderCallbacks callbacks){
  this.stdout=stdout;
  this.stderr=stderr;
  this.isDebug=isDebug;
  this.loggerPreferences=loggerPreferences;
  this.callbacks=callbacks;
  this.table=table;
  this.callbacks=callbacks;
  this.helpers=callbacks.getHelpers();
  this.matchingColorFilters=new ArrayList<UUID>();
  IHttpService tempRequestResponseHttpService=requestResponse.getHttpService();
  String strFullRequest=new String(requestResponse.getRequest());
  List<String> lstFullRequestHeader=tempAnalyzedReq.getHeaders();
  if (table.getModel().getTableHeaderColumnsDetails().isTableHeaderEnabled_byName("String_Node_Str"))   this.uniqueIdentifier=java.util.UUID.randomUUID().toString();
  this.tool=tool;
  this.requestResponse=requestResponse;
  this.url=url;
  if (table.getModel().getTableHeaderColumnsDetails().isTableHeaderEnabled_byName("String_Node_Str"))   this.relativeURL=url.getFile();
  this.host=tempRequestResponseHttpService.getHost();
  this.protocol=tempRequestResponseHttpService.getProtocol();
  this.isSSL=this.protocol.equals("String_Node_Str");
  if (table.getModel().getTableHeaderColumnsDetails().isTableHeaderEnabled_byName("String_Node_Str"))   this.targetPort=tempRequestResponseHttpService.getPort();
  if (table.getModel().getTableHeaderColumnsDetails().isTableHeaderEnabled_byName("String_Node_Str"))   this.method=tempAnalyzedReq.getMethod();
  try {
    String tempPath=url.getPath().replaceAll("String_Node_Str","String_Node_Str");
    tempPath=tempPath.substring(tempPath.lastIndexOf("String_Node_Str"));
    int tempPathDotLocation=tempPath.lastIndexOf("String_Node_Str");
    if (tempPathDotLocation >= 0)     this.urlExtension=tempPath.substring(tempPathDotLocation + 1);
  }
 catch (  Exception e) {
    if (isDebug)     stderr.println(e.getMessage());
    this.urlExtension="String_Node_Str";
  }
  if (message != null) {
    if (isDebug) {
    }
    if (table.getModel().getTableHeaderColumnsDetails().isTableHeaderEnabled_byName("String_Node_Str"))     this.listenerInterface=message.getListenerInterface();
    if (table.getModel().getTableHeaderColumnsDetails().isTableHeaderEnabled_byName("String_Node_Str"))     this.clientIP=message.getClientIpAddress().toString();
    if (table.getModel().getTableHeaderColumnsDetails().isTableHeaderEnabled_byName("String_Node_Str"))     this.uniqueIdentifier="String_Node_Str" + String.valueOf(message.getMessageReference());
  }
  this.requestLength=strFullRequest.length() - tempAnalyzedReq.getBodyOffset();
  this.hasQueryStringParam=(url.getQuery() != null) ? true : false;
  this.hasBodyParam=(requestLength > 0) ? true : false;
  this.params=(this.hasQueryStringParam || this.hasBodyParam) ? true : false;
  this.hasCookieParam=false;
  if (table.getModel().getTableHeaderColumnsDetails().isTableHeaderEnabled_byName("String_Node_Str") || table.getModel().getTableHeaderColumnsDetails().isTableHeaderEnabled_byName("String_Node_Str") || table.getModel().getTableHeaderColumnsDetails().isTableHeaderEnabled_byName("String_Node_Str")|| table.getModel().getTableHeaderColumnsDetails().isTableHeaderEnabled_byName("String_Node_Str")|| table.getModel().getTableHeaderColumnsDetails().isTableHeaderEnabled_byName("String_Node_Str")) {
    for (    String item : lstFullRequestHeader) {
      if (item.indexOf("String_Node_Str") >= 0) {
        String[] headerItem=item.split("String_Node_Str",2);
        headerItem[0]=headerItem[0].toLowerCase();
        if (headerItem[0].equals("String_Node_Str")) {
          this.sentCookies=headerItem[1];
          if (!this.sentCookies.isEmpty()) {
            this.hasCookieParam=true;
            this.sentCookies+="String_Node_Str";
            if (table.getModel().getTableHeaderColumnsDetails().isTableHeaderEnabled_byName("String_Node_Str")) {
              List<ICookie> cookieJars=callbacks.getCookieJarContents();
              boolean atLeastOneDidNotMatched=false;
              boolean anyParamMatched=false;
              for (              ICookie cookieItem : cookieJars) {
                if (cookieItem.getDomain().equals(this.host)) {
                  String currentCookieJarParam=cookieItem.getName() + "String_Node_Str" + cookieItem.getValue()+ "String_Node_Str";
                  if (this.sentCookies.contains(currentCookieJarParam)) {
                    anyParamMatched=true;
                  }
 else {
                    atLeastOneDidNotMatched=true;
                  }
                }
                if (anyParamMatched && atLeastOneDidNotMatched) {
                  break;
                }
              }
              if (atLeastOneDidNotMatched && anyParamMatched) {
                this.usesCookieJar=cookieJarStatus.PARTIALLY;
              }
 else               if (!atLeastOneDidNotMatched && anyParamMatched) {
                this.usesCookieJar=cookieJarStatus.YES;
              }
            }
          }
        }
 else         if (headerItem[0].equals("String_Node_Str")) {
          this.referrerURL=headerItem[1];
        }
 else         if (headerItem[0].equals("String_Node_Str")) {
          this.requstContentType=headerItem[1];
        }
      }
    }
  }
  for (int i=0; i <= 5; i++) {
    String regexVarName="String_Node_Str" + String.valueOf(i + 1) + "String_Node_Str";
    if (table.getModel().getTableHeaderColumnsDetails().isTableHeaderEnabled_byName(regexVarName)) {
      TableStructure regexColumn=table.getModel().getTableHeaderColumnsDetails().getEnabledTableHeader_byName(regexVarName);
      String regexString=regexColumn.getRegExData().getRegExString();
      if (!regexString.isEmpty()) {
        Pattern p=null;
        try {
          if (regexColumn.getRegExData().isRegExCaseSensitive())           p=Pattern.compile(regexString);
 else           p=Pattern.compile(regexString,Pattern.CASE_INSENSITIVE);
          Matcher m=p.matcher(strFullRequest);
          StringBuilder allMatches=new StringBuilder();
          int counter=1;
          while (m.find()) {
            if (counter == 2) {
              allMatches.insert(0,"String_Node_Str");
              allMatches.append("String_Node_Str");
            }
            if (counter > 1) {
              allMatches.append("String_Node_Str" + m.group() + "String_Node_Str");
            }
 else {
              allMatches.append(m.group());
            }
            counter++;
          }
          this.regexAllReq[i]=allMatches.toString();
        }
 catch (        Exception e) {
          stderr.println("String_Node_Str" + regexString);
        }
      }
    }
  }
  if (!messageIsRequest) {
    IResponseInfo tempAnalyzedResp=helpers.analyzeResponse(requestResponse.getResponse());
    String strFullResponse=new String(requestResponse.getResponse());
    List<String> lstFullResponseHeader=tempAnalyzedResp.getHeaders();
    this.status=tempAnalyzedResp.getStatusCode();
    if (table.getModel().getTableHeaderColumnsDetails().isTableHeaderEnabled_byName("String_Node_Str"))     this.responseContentType_burp=tempAnalyzedResp.getStatedMimeType();
    if (table.getModel().getTableHeaderColumnsDetails().isTableHeaderEnabled_byName("String_Node_Str"))     this.responseInferredContentType_burp=tempAnalyzedResp.getInferredMimeType();
    this.responseLength=strFullResponse.length() - tempAnalyzedResp.getBodyOffset();
    if (table.getModel().getTableHeaderColumnsDetails().isTableHeaderEnabled_byName("String_Node_Str"))     for (    ICookie cookieItem : tempAnalyzedResp.getCookies()) {
      this.newCookies+=cookieItem.getName() + "String_Node_Str" + cookieItem.getValue()+ "String_Node_Str";
    }
    this.hasSetCookies=(!newCookies.isEmpty()) ? true : false;
    DateFormat dateFormat=new SimpleDateFormat("String_Node_Str");
    Date date=new Date();
    this.responseTime=dateFormat.format(date);
    if (table.getModel().getTableHeaderColumnsDetails().isTableHeaderEnabled_byName("String_Node_Str")) {
      for (      String item : lstFullResponseHeader) {
        item=item.toLowerCase();
        if (item.startsWith("String_Node_Str")) {
          String[] temp=item.split("String_Node_Str",2);
          if (temp.length > 0)           this.responseContentType=temp[1];
        }
      }
    }
    for (int i=0; i <= 5; i++) {
      String regexVarName="String_Node_Str" + String.valueOf(i + 1) + "String_Node_Str";
      if (table.getModel().getTableHeaderColumnsDetails().isTableHeaderEnabled_byName(regexVarName)) {
        TableStructure regexColumn=table.getModel().getTableHeaderColumnsDetails().getEnabledTableHeader_byName(regexVarName);
        String regexString=regexColumn.getRegExData().getRegExString();
        if (!regexString.isEmpty()) {
          Pattern p=null;
          try {
            if (regexColumn.getRegExData().isRegExCaseSensitive())             p=Pattern.compile(regexString);
 else             p=Pattern.compile(regexString,Pattern.CASE_INSENSITIVE);
            Matcher m=p.matcher(strFullResponse);
            StringBuilder allMatches=new StringBuilder();
            int counter=1;
            while (m.find()) {
              if (counter == 2) {
                allMatches.insert(0,"String_Node_Str");
                allMatches.append("String_Node_Str");
              }
              if (counter > 1) {
                allMatches.append("String_Node_Str" + m.group() + "String_Node_Str");
              }
 else {
                allMatches.append(m.group());
              }
              counter++;
            }
            this.regexAllResp[i]=allMatches.toString();
          }
 catch (          Exception e) {
            stderr.println("String_Node_Str" + regexString);
          }
        }
      }
    }
    this.isCompleted=true;
    tempAnalyzedResp=null;
  }
  this.comment="String_Node_Str";
  tempRequestResponseHttpService=null;
  tempAnalyzedReq=null;
}