Uploaded image for project: 'Harmony'
  1. Harmony
  2. HARMONY-6644

[classlib][archive] ZipFile(File) does not close the stream if ZipException occurs

Add voteWatch issue
    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Major
    • Resolution: Unresolved
    • 5.0M14
    • None
    • Classlib
    • None
    • Windows XP
    • Patch Available

    Description

      run below test case, the observed output is "false" while the expected output is "true".
      The cause is if ZipException occurs, the mRaf field is not closed.
      Thus file stream and system resources associated with the stream are not released.
      Thus failed to delete the file on Windows platform.

      import java.io.File;
      import java.io.IOException;
      import java.util.zip.*;

      import tests.support.Support_PlatformFile;

      public class ZipFileBug {

      public static void main (String [] args) throws IOException {
      ZipFile zip;
      String emptyFileName = System.getProperty("user.dir");
      if (emptyFileName.charAt(emptyFileName.length() - 1) == File.separatorChar)

      { emptyFileName = Support_PlatformFile.getNewPlatformFile( emptyFileName, "empty.zip"); }

      else

      { emptyFileName = Support_PlatformFile.getNewPlatformFile( emptyFileName + File.separatorChar, "empty.zip"); }


      File emptyFile = new File(emptyFileName);
      emptyFile.createNewFile();
      try

      { zip = new ZipFile(emptyFile, ZipFile.OPEN_READ); }

      catch (ZipException ze) {
      }
      System.out.println(emptyFile.delete());
      }
      }

      Attachments

        1. JIRA-6644-v2.diff
          3 kB
          Xiao Shu
        2. JIRA-6644.diff
          3 kB
          Xiao Shu

        Activity

          People

            Unassigned Unassigned
            xiaoshu Xiao Shu

            Dates

              Created:
              Updated:

              Slack

                Issue deployment