commons-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Torsten Curdt (JIRA)" <j...@apache.org>
Subject [jira] [Resolved] (JCI-58) EclipseJavaCompiler fails to close inputstream
Date Fri, 13 May 2011 08:19:47 GMT

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

Torsten Curdt resolved JCI-58.
------------------------------

    Resolution: Fixed
      Assignee: Torsten Curdt

Thanks for the fix. Finally applied.

> EclipseJavaCompiler fails to close inputstream
> ----------------------------------------------
>
>                 Key: JCI-58
>                 URL: https://issues.apache.org/jira/browse/JCI-58
>             Project: Commons JCI
>          Issue Type: Bug
>          Components: compiler eclipse
>    Affects Versions: 1.1
>         Environment: Java 1.5, WinXP
>            Reporter: Michael Gannon
>            Assignee: Torsten Curdt
>
> The method isPackage(final String pClaszzName) calls classLoader.getResourceAsStream()
but fails to close the stream if it is opened successfully. On Windows this means all other
file access to this file is not permitted. The inputstream should be closed. Here is a replacement
method:
>             private boolean isPackage( final String pClazzName ) {
>                 final InputStream is = pClassLoader.getResourceAsStream(ConversionUtils.convertClassToResourcePath(pClazzName));
>                 if (is != null) {
>                     log.debug("found the class for " + pClazzName + "- no package");
>                     try {
>                         is.close();
>                     } catch (final IOException ie) {
>                         log.error("could not close input stream", ie);
>                     } 
>                     return false;
>                 }
>                 // FIXME: this should not be tied to the extension
>                 final String source = pClazzName.replace('.', '/') + ".java";
>                 if (pReader.isAvailable(source)) {
>                     log.debug("found the source " + source + " for " + pClazzName + "
- no package ");
>                     return false;
>                 }
>                 return true;
>             }

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message