### Eclipse Workspace Patch 1.0 #P org.eclipse.jdt.core Index: model/org/eclipse/jdt/internal/core/ClasspathEntry.java =================================================================== RCS file: /cvsroot/eclipse/org.eclipse.jdt.core/model/org/eclipse/jdt/internal/core/ClasspathEntry.java,v retrieving revision 1.115 diff -u -r1.115 ClasspathEntry.java --- model/org/eclipse/jdt/internal/core/ClasspathEntry.java 7 Mar 2009 00:58:57 -0000 1.115 +++ model/org/eclipse/jdt/internal/core/ClasspathEntry.java 17 Apr 2009 20:05:50 -0000 @@ -10,11 +10,10 @@ *******************************************************************************/ package org.eclipse.jdt.internal.core; -import java.io.BufferedReader; import java.io.ByteArrayOutputStream; import java.io.File; import java.io.IOException; -import java.io.InputStreamReader; +import java.io.InputStream; import java.io.OutputStreamWriter; import java.io.UnsupportedEncodingException; import java.util.ArrayList; @@ -49,8 +48,8 @@ import org.eclipse.jdt.core.compiler.CharOperation; import org.eclipse.jdt.core.compiler.IProblem; import org.eclipse.jdt.internal.compiler.env.AccessRestriction; -import org.eclipse.jdt.internal.compiler.env.AccessRuleSet; import org.eclipse.jdt.internal.compiler.env.AccessRule; +import org.eclipse.jdt.internal.compiler.env.AccessRuleSet; import org.eclipse.jdt.internal.compiler.impl.CompilerOptions; import org.eclipse.jdt.internal.compiler.util.ManifestAnalyzer; import org.eclipse.jdt.internal.core.util.Messages; @@ -904,7 +903,7 @@ return null; JavaModelManager manager = JavaModelManager.getJavaModelManager(); ZipFile zip = null; - BufferedReader reader = null; + InputStream inputStream = null; List calledFileNames = null; try { zip = manager.getZipFile(jarPath); @@ -912,9 +911,9 @@ if (manifest == null) return null; // non-null implies regular file - reader = new BufferedReader(new InputStreamReader(zip.getInputStream(manifest))); ManifestAnalyzer analyzer = new ManifestAnalyzer(); - boolean success = analyzer.analyzeManifestContents(reader); + inputStream = zip.getInputStream(manifest); + boolean success = analyzer.analyzeManifestContents(inputStream); calledFileNames = analyzer.getCalledFileNames(); if (!success || analyzer.getClasspathSectionsCount() == 1 && calledFileNames == null) { if (JavaModelManager.CP_RESOLVE_VERBOSE_FAILURE) { @@ -941,9 +940,9 @@ } } finally { manager.closeZipFile(zip); - if (reader != null) { + if (inputStream != null) { try { - reader.close(); + inputStream.close(); } catch (IOException e) { // best effort } @@ -1462,7 +1461,7 @@ *
  • The project output location path cannot be null, must be absolute and located inside the project. *
  • Specific output locations (specified on source entries) can be null, if not they must be located inside the project, *
  • A project entry cannot refer to itself directly (that is, a project cannot prerequisite itself). - *
  • Classpath entries or output locations cannot coincidate or be nested in each other, except for the following scenarii listed below: + *
  • Classpath entries or output locations cannot coincidate or be nested in each other, except for the following scenarii listed below: *