#vulnerable code 
                                @Test
    public void testConstructors() throws Exception {
        new ContentLengthOutputStream(new SessionOutputBufferMock(), 10L);
        try {
            new ContentLengthOutputStream(null, 10L);
            Assert.fail("IllegalArgumentException should have been thrown");
        } catch (final IllegalArgumentException ex) {
            // expected
        }
        try {
            new ContentLengthOutputStream(new SessionOutputBufferMock(), -10);
            Assert.fail("IllegalArgumentException should have been thrown");
        } catch (final IllegalArgumentException ex) {
            // expected
        }
    } 
                            #location 3 
                            #vulnerability type RESOURCE_LEAK
#fixed code
                                @Test
    public void testConstructors() throws Exception {
        final ContentLengthOutputStream in = new ContentLengthOutputStream(
                new SessionOutputBufferMock(), 10L);
        in.close();
        try {
            new ContentLengthOutputStream(null, 10L);
            Assert.fail("IllegalArgumentException should have been thrown");
        } catch (final IllegalArgumentException ex) {
            // expected
        }
        try {
            new ContentLengthOutputStream(new SessionOutputBufferMock(), -10);
            Assert.fail("IllegalArgumentException should have been thrown");
        } catch (final IllegalArgumentException ex) {
            // expected
        }
    }