Program: 133499
Project: 133499
Buggy source:
/** 
 * Loads a file into the form.  If null input is given a default form will be populated by transferring files from the plugin itself.
 * @param input The name of the input input file, including the file extension
 */
@Override public void loadInput(String input){
  IFile xsdIFile, xmlIFile;
  File temp=null;
  if (form == null) {
    form=new Form();
    String[] schemas={"String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str"};
    String defaultFilePath=project.getLocation().toOSString() + System.getProperty("String_Node_Str") + "String_Node_Str";
    temp=new File(defaultFilePath);
    if (!temp.exists()) {
      temp.mkdir();
    }
    for (    String schemaFile : schemas) {
      try {
        temp=new File(defaultFilePath + System.getProperty("String_Node_Str") + schemaFile);
        if (!temp.exists()) {
          temp.createNewFile();
          URI uri=new URI("String_Node_Str" + schemaFile);
          InputStream reader=uri.toURL().openStream();
          FileOutputStream outStream=new FileOutputStream(temp);
          int fileByte;
          while ((fileByte=reader.read()) != -1) {
            outStream.write(fileByte);
          }
          outStream.close();
          reader.close();
        }
      }
 catch (      URISyntaxException e) {
        logger.error(getClass().getName() + "String_Node_Str",e);
        logger.error("String_Node_Str");
      }
catch (      MalformedURLException e) {
        logger.error(getClass().getName() + "String_Node_Str",e);
        logger.error("String_Node_Str");
      }
catch (      IOException e) {
        logger.error(getClass().getName() + "String_Node_Str",e);
        logger.error("String_Node_Str");
      }
    }
    try {
      project.refreshLocal(IResource.DEPTH_INFINITE,null);
    }
 catch (    CoreException e) {
      logger.error("String_Node_Str");
    }
  }
  if (input == null) {
    xsdIFile=project.getFolder("String_Node_Str").getFile("String_Node_Str");
    xmlIFile=project.getFolder("String_Node_Str").getFile("String_Node_Str");
  }
 else {
    xsdIFile=project.getFolder("String_Node_Str").getFile("String_Node_Str");
    xmlIFile=project.getFile(input);
  }
  xsdFile=xsdIFile.getRawLocation().makeAbsolute().toFile();
  xmlFile=xmlIFile.getRawLocation().makeAbsolute().toFile();
  if (xsdFile != null) {
    emfComp=new EMFComponent();
    emfComp.load(xsdFile,xmlFile);
    emfComp.setName("String_Node_Str");
    emfComp.setId(1);
  }
 else {
    emfComp=new EMFComponent();
    emfComp.setName("String_Node_Str");
    emfComp.setDescription("String_Node_Str");
    emfComp.setId(1);
  }
  form.addComponent(emfComp);
}

Fixed version (ground truth):
/** 
 * Loads a file into the form.  If null input is given a default form will be populated by transferring files from the plugin itself.
 * @param input The name of the input input file, including the file extension
 */
@Override public void loadInput(String input){
  IFile xsdIFile, xmlIFile;
  File temp=null;
  if (form.getNumberOfComponents() == 0) {
    form=new Form();
    String[] schemas={"String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str"};
    String defaultFilePath=project.getLocation().toOSString() + System.getProperty("String_Node_Str") + "String_Node_Str";
    temp=new File(defaultFilePath);
    if (!temp.exists()) {
      temp.mkdir();
    }
    for (    String schemaFile : schemas) {
      try {
        temp=new File(defaultFilePath + System.getProperty("String_Node_Str") + schemaFile);
        if (!temp.exists()) {
          temp.createNewFile();
          URI uri=new URI("String_Node_Str" + schemaFile);
          InputStream reader=uri.toURL().openStream();
          FileOutputStream outStream=new FileOutputStream(temp);
          int fileByte;
          while ((fileByte=reader.read()) != -1) {
            outStream.write(fileByte);
          }
          outStream.close();
          reader.close();
        }
      }
 catch (      URISyntaxException e) {
        logger.error(getClass().getName() + "String_Node_Str",e);
        logger.error("String_Node_Str");
      }
catch (      MalformedURLException e) {
        logger.error(getClass().getName() + "String_Node_Str",e);
        logger.error("String_Node_Str");
      }
catch (      IOException e) {
        logger.error(getClass().getName() + "String_Node_Str",e);
        logger.error("String_Node_Str");
      }
    }
    try {
      project.refreshLocal(IResource.DEPTH_INFINITE,null);
    }
 catch (    CoreException e) {
      logger.error("String_Node_Str");
    }
  }
  if (input == null) {
    xsdIFile=project.getFolder("String_Node_Str").getFile("String_Node_Str");
    xmlIFile=project.getFolder("String_Node_Str").getFile("String_Node_Str");
  }
 else {
    xsdIFile=project.getFolder("String_Node_Str").getFile("String_Node_Str");
    xmlIFile=project.getFile(input);
  }
  xsdFile=xsdIFile.getRawLocation().makeAbsolute().toFile();
  xmlFile=xmlIFile.getRawLocation().makeAbsolute().toFile();
  if (xsdFile != null) {
    emfComp=new EMFComponent();
    emfComp.load(xsdFile,xmlFile);
    emfComp.setName("String_Node_Str");
    emfComp.setId(1);
  }
 else {
    emfComp=new EMFComponent();
    emfComp.setName("String_Node_Str");
    emfComp.setDescription("String_Node_Str");
    emfComp.setId(1);
  }
  form.addComponent(emfComp);
}