output: #fixed code
                                  public void testTarArchiveLongNameCreation() throws Exception {
      	String name = "testdata/12345678901234567890123456789012345678901234567890123456789012345678901234567890123456.xml";
      	byte[] bytes = name.getBytes();
      	assertEquals(bytes.length, 99);
      	
  		final File output = new File(dir, "bla.tar");
  		final File file1 = getFile("test1.xml");
      	final OutputStream out = new FileOutputStream(output);
          final ArchiveOutputStream os = new ArchiveStreamFactory().createArchiveOutputStream("tar", out);
          final TarArchiveEntry entry = new TarArchiveEntry(name);
          entry.setModTime(0);
          entry.setSize(file1.length());
          entry.setUserId(0);
          entry.setGroupId(0);
          entry.setUserName("avalon");
          entry.setGroupName("excalibur");
          entry.setMode(0100000);
          os.putArchiveEntry(entry);
          FileInputStream in = new FileInputStream(file1);
          IOUtils.copy(in, os);
          os.closeArchiveEntry();
          os.close();
          out.close();
          in.close();
          
          
          ArchiveOutputStream os2 = null;
          try {
          	String toLongName = "testdata/123456789012345678901234567890123456789012345678901234567890123456789012345678901234567.xml";
          	final File output2 = new File(dir, "bla.tar");
          	final OutputStream out2 = new FileOutputStream(output2);
          	os2 = new ArchiveStreamFactory().createArchiveOutputStream("tar", out2);
          	final TarArchiveEntry entry2 = new TarArchiveEntry(toLongName);
          	entry2.setModTime(0);
          	entry2.setSize(file1.length());
          	entry2.setUserId(0);
          	entry2.setGroupId(0);
          	entry2.setUserName("avalon");
          	entry2.setGroupName("excalibur");
          	entry2.setMode(0100000);
          	os.putArchiveEntry(entry);
          	IOUtils.copy(new FileInputStream(file1), os2);
          } catch(IOException e) {
          	assertTrue(true);
          } finally {
          	if (os2 != null){
          	    os2.closeArchiveEntry();
          	    os2.close();
          	}
          }
      }
input: #vulnerable code 
                                  public void testTarArchiveLongNameCreation() throws Exception {
      	String name = "testdata/12345678901234567890123456789012345678901234567890123456789012345678901234567890123456.xml";
      	byte[] bytes = name.getBytes();
      	assertEquals(bytes.length, 99);
      	
  		final File output = new File(dir, "bla.tar");
  		final File file1 = getFile("test1.xml");
      	final OutputStream out = new FileOutputStream(output);
          final ArchiveOutputStream os = new ArchiveStreamFactory().createArchiveOutputStream("tar", out);
          final TarArchiveEntry entry = new TarArchiveEntry(name);
          entry.setModTime(0);
          entry.setSize(file1.length());
          entry.setUserId(0);
          entry.setGroupId(0);
          entry.setUserName("avalon");
          entry.setGroupName("excalibur");
          entry.setMode(0100000);
          os.putArchiveEntry(entry);
          IOUtils.copy(new FileInputStream(file1), os);
          os.closeArchiveEntry();
          os.close();
          
          
          ArchiveOutputStream os2 = null;
          try {
          	String toLongName = "testdata/123456789012345678901234567890123456789012345678901234567890123456789012345678901234567.xml";
          	final File output2 = new File(dir, "bla.tar");
          	final OutputStream out2 = new FileOutputStream(output2);
          	os2 = new ArchiveStreamFactory().createArchiveOutputStream("tar", out2);
          	final TarArchiveEntry entry2 = new TarArchiveEntry(toLongName);
          	entry2.setModTime(0);
          	entry2.setSize(file1.length());
          	entry2.setUserId(0);
          	entry2.setGroupId(0);
          	entry2.setUserName("avalon");
          	entry2.setGroupName("excalibur");
          	entry2.setMode(0100000);
          	os.putArchiveEntry(entry);
          	IOUtils.copy(new FileInputStream(file1), os2);
          } catch(IOException e) {
          	assertTrue(true);
          } finally {
          	if (os2 != null){
          	    os2.closeArchiveEntry();
          	}
          }
      } 
                              #location 19 
                              #vulnerability type RESOURCE_LEAK