You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Xiao Shu (JIRA)" <ji...@apache.org> on 2010/09/07 10:25:33 UTC

[jira] Updated: (HARMONY-6644) [classlib][archive] ZipFile(File) does not close the stream if ZipException occurs

     [ https://issues.apache.org/jira/browse/HARMONY-6644?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Xiao Shu updated HARMONY-6644:
------------------------------

    Attachment: JIRA-6644.diff

JIRA-6644.diff is the patch for this defect.

> [classlib][archive] ZipFile(File) does not close the stream if ZipException occurs
> ----------------------------------------------------------------------------------
>
>                 Key: HARMONY-6644
>                 URL: https://issues.apache.org/jira/browse/HARMONY-6644
>             Project: Harmony
>          Issue Type: Bug
>          Components: Classlib
>    Affects Versions: 5.0M14
>         Environment: Windows XP
>            Reporter: Xiao Shu
>         Attachments: JIRA-6644.diff
>
>
> 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());        
>     }
> }

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.