Program: 88509
Project: 88509
Buggy source:
/** 
 * General purpose method for sending a constructed http request via http client.
 * @param request
 * @return
 * @throws IOException
 * @throws ServerException
 */
public static JsonParser sendMMSRequest(Project project,HttpRequestBase request) throws IOException, ServerException, URISyntaxException {
  File targetFile=File.createTempFile("String_Node_Str",null);
  targetFile.deleteOnExit();
  HttpEntityEnclosingRequest httpEntityEnclosingRequest=null;
  boolean logBody=MDKOptionsGroup.getMDKOptions().isLogJson();
  logBody=logBody && request instanceof HttpEntityEnclosingRequest;
  logBody=logBody && ((httpEntityEnclosingRequest=(HttpEntityEnclosingRequest)request).getEntity() != null);
  logBody=logBody && httpEntityEnclosingRequest.getEntity().isRepeatable();
  System.out.println("String_Node_Str" + request.getMethod() + "String_Node_Str"+ request.getURI().toString());
  boolean throwServerException=false;
  int responseCode;
  try (CloseableHttpClient httpclient=HttpClients.createDefault();CloseableHttpResponse response=httpclient.execute(request);InputStream inputStream=response.getEntity().getContent();OutputStream outputStream=new FileOutputStream(targetFile)){
    responseCode=response.getStatusLine().getStatusCode();
    String responseType=((response.getEntity().getContentType() != null) ? response.getEntity().getContentType().getValue() : "String_Node_Str");
    System.out.println("String_Node_Str" + request.getMethod() + "String_Node_Str"+ request.getURI().toString()+ "String_Node_Str"+ responseCode);
    System.out.println("String_Node_Str" + targetFile.getPath());
    if (responseCode == HttpURLConnection.HTTP_OK || (request.getMethod().equals("String_Node_Str") && responseCode == HttpURLConnection.HTTP_NOT_FOUND && responseType.equals("String_Node_Str"))) {
    }
 else     if (responseCode == HttpURLConnection.HTTP_UNAUTHORIZED) {
      Utils.guilog("String_Node_Str" + responseCode);
      MMSLogoutAction.logoutAction(project);
      throwServerException=true;
    }
 else {
      Utils.guilog("String_Node_Str" + responseCode);
      throwServerException=true;
    }
    if (inputStream != null && responseType.equals("String_Node_Str")) {
      byte[] buffer=new byte[8 * 1024];
      int bytesRead;
      while ((bytesRead=inputStream.read(buffer)) != -1) {
        outputStream.write(buffer,0,bytesRead);
      }
    }
  }
   JsonFactory jsonFactory=JacksonUtils.getJsonFactory();
  try (JsonParser jsonParser=jsonFactory.createParser(targetFile)){
    while (jsonParser.nextFieldName() != null && !jsonParser.nextFieldName().equals("String_Node_Str")) {
    }
    if (jsonParser.getCurrentToken() == JsonToken.FIELD_NAME) {
      jsonParser.nextToken();
      Application.getInstance().getGUILog().log("String_Node_Str" + jsonParser.getText());
    }
  }
   if (throwServerException) {
    Utils.showPopupMessage("String_Node_Str");
    throw new ServerException(targetFile.getAbsolutePath(),responseCode);
  }
  return JacksonUtils.getJsonFactory().createParser(targetFile);
}

Fixed version (ground truth):
/** 
 * General purpose method for sending a constructed http request via http client.
 * @param request
 * @return
 * @throws IOException
 * @throws ServerException
 */
public static File sendMMSRequest(Project project,HttpRequestBase request) throws IOException, ServerException, URISyntaxException {
  File targetFile=File.createTempFile("String_Node_Str",null);
  targetFile.deleteOnExit();
  HttpEntityEnclosingRequest httpEntityEnclosingRequest=null;
  boolean logBody=MDKOptionsGroup.getMDKOptions().isLogJson();
  logBody=logBody && request instanceof HttpEntityEnclosingRequest;
  logBody=logBody && ((httpEntityEnclosingRequest=(HttpEntityEnclosingRequest)request).getEntity() != null);
  logBody=logBody && httpEntityEnclosingRequest.getEntity().isRepeatable();
  System.out.println("String_Node_Str" + request.getMethod() + "String_Node_Str"+ request.getURI().toString());
  boolean throwServerException=false;
  int responseCode;
  try (CloseableHttpClient httpclient=HttpClients.createDefault();CloseableHttpResponse response=httpclient.execute(request);InputStream inputStream=response.getEntity().getContent();OutputStream outputStream=new FileOutputStream(targetFile)){
    responseCode=response.getStatusLine().getStatusCode();
    String responseType=((response.getEntity().getContentType() != null) ? response.getEntity().getContentType().getValue() : "String_Node_Str");
    System.out.println("String_Node_Str" + request.getMethod() + "String_Node_Str"+ request.getURI().toString()+ "String_Node_Str"+ responseCode);
    System.out.println("String_Node_Str" + targetFile.getPath());
    if (responseCode == HttpURLConnection.HTTP_OK || (request.getMethod().equals("String_Node_Str") && responseCode == HttpURLConnection.HTTP_NOT_FOUND && responseType.equals("String_Node_Str"))) {
    }
 else     if (responseCode == HttpURLConnection.HTTP_UNAUTHORIZED) {
      Utils.guilog("String_Node_Str" + responseCode);
      MMSLogoutAction.logoutAction(project);
      throwServerException=true;
    }
 else {
      Utils.guilog("String_Node_Str" + responseCode);
      throwServerException=true;
    }
    if (inputStream != null && responseType.equals("String_Node_Str")) {
      byte[] buffer=new byte[8 * 1024];
      int bytesRead;
      while ((bytesRead=inputStream.read(buffer)) != -1) {
        outputStream.write(buffer,0,bytesRead);
      }
    }
  }
   JsonFactory jsonFactory=JacksonUtils.getJsonFactory();
  try (JsonParser jsonParser=jsonFactory.createParser(targetFile)){
    while (jsonParser.nextFieldName() != null && !jsonParser.nextFieldName().equals("String_Node_Str")) {
    }
    if (jsonParser.getCurrentToken() == JsonToken.FIELD_NAME) {
      jsonParser.nextToken();
      Application.getInstance().getGUILog().log("String_Node_Str" + jsonParser.getText());
    }
  }
   if (throwServerException) {
    Utils.showPopupMessage("String_Node_Str");
    throw new ServerException(targetFile.getAbsolutePath(),responseCode);
  }
  return targetFile;
}