Program: 29508
Project: 29508
Buggy source:
@Override public Map<String,URI> getArtifact(){
  ZipOutputStream zip=null;
  Map<String,URI> artifacts=new HashMap<String,URI>();
  try {
    String ZIP_BASE_DIR="String_Node_Str".replace("String_Node_Str",Version.getVersionNumber());
    String ZIP_GF_PACKAGE_DIR=ZIP_BASE_DIR + "String_Node_Str";
    String ZIP_REST_PACKAGE_DIR=ZIP_GF_PACKAGE_DIR + "String_Node_Str";
    File zipDir=Util.createTempDirectory();
    File zipFile=new File(zipDir,ARTIFACT_NAME + "String_Node_Str" + versionString+ "String_Node_Str");
    zipFile.createNewFile();
    zipFile.deleteOnExit();
    zip=new ZipOutputStream(new FileOutputStream(zipFile));
    add(ZIP_GF_PACKAGE_DIR,"String_Node_Str",new ByteArrayInputStream("String_Node_Str".getBytes()),zip);
    add(ZIP_BASE_DIR,"String_Node_Str",new ByteArrayInputStream(getFileContents("String_Node_Str").getBytes()),zip);
    addFileFromClasspath(ZIP_REST_PACKAGE_DIR,"String_Node_Str",zip);
    addFileFromClasspath(ZIP_REST_PACKAGE_DIR,"String_Node_Str",zip);
    addFileFromClasspath(ZIP_REST_PACKAGE_DIR,"String_Node_Str",zip);
    addFileFromClasspath(ZIP_REST_PACKAGE_DIR,"String_Node_Str",zip);
    addFileFromClasspath(ZIP_REST_PACKAGE_DIR,"String_Node_Str",zip);
    for (    File file : baseDirectory.listFiles()) {
      add(ZIP_REST_PACKAGE_DIR,file,zip);
    }
    artifacts.put(zipFile.getName(),zipFile.toURI());
    Util.deleteDirectory(baseDirectory);
  }
 catch (  Exception ex) {
    Logger.getLogger(PythonClientGenerator.class.getName()).log(Level.SEVERE,null,ex);
  }
 finally {
    if (zip != null) {
      try {
        zip.close();
      }
 catch (      IOException ex) {
        Logger.getLogger(PythonClientGenerator.class.getName()).log(Level.SEVERE,null,ex);
      }
    }
  }
  return artifacts;
}

Fixed version (ground truth):
@Override public Map<String,URI> getArtifact(){
  ZipOutputStream zip=null;
  Map<String,URI> artifacts=new HashMap<String,URI>();
  try {
    String ZIP_BASE_DIR="String_Node_Str".replace("String_Node_Str",Version.getVersionNumber());
    String ZIP_GF_PACKAGE_DIR=ZIP_BASE_DIR + "String_Node_Str";
    String ZIP_REST_PACKAGE_DIR=ZIP_GF_PACKAGE_DIR + "String_Node_Str";
    File zipDir=Util.createTempDirectory();
    File zipFile=new File(zipDir,ARTIFACT_NAME + "String_Node_Str" + versionString+ "String_Node_Str");
    if (!zipFile.createNewFile()) {
      throw new RuntimeException("String_Node_Str");
    }
    zipFile.deleteOnExit();
    zip=new ZipOutputStream(new FileOutputStream(zipFile));
    add(ZIP_GF_PACKAGE_DIR,"String_Node_Str",new ByteArrayInputStream("String_Node_Str".getBytes()),zip);
    add(ZIP_BASE_DIR,"String_Node_Str",new ByteArrayInputStream(getFileContents("String_Node_Str").getBytes()),zip);
    addFileFromClasspath(ZIP_REST_PACKAGE_DIR,"String_Node_Str",zip);
    addFileFromClasspath(ZIP_REST_PACKAGE_DIR,"String_Node_Str",zip);
    addFileFromClasspath(ZIP_REST_PACKAGE_DIR,"String_Node_Str",zip);
    addFileFromClasspath(ZIP_REST_PACKAGE_DIR,"String_Node_Str",zip);
    addFileFromClasspath(ZIP_REST_PACKAGE_DIR,"String_Node_Str",zip);
    for (    File file : baseDirectory.listFiles()) {
      add(ZIP_REST_PACKAGE_DIR,file,zip);
    }
    artifacts.put(zipFile.getName(),zipFile.toURI());
    Util.deleteDirectory(baseDirectory);
  }
 catch (  Exception ex) {
    Logger.getLogger(PythonClientGenerator.class.getName()).log(Level.SEVERE,null,ex);
  }
 finally {
    if (zip != null) {
      try {
        zip.close();
      }
 catch (      IOException ex) {
        Logger.getLogger(PythonClientGenerator.class.getName()).log(Level.SEVERE,null,ex);
      }
    }
  }
  return artifacts;
}