mirror of https://github.com/sbt/sbt.git
Merge pull request #1853 from hcoles/0.13
Fix #1368 - getResources should never return null
This commit is contained in:
commit
999f42ab4f
|
|
@ -6,12 +6,13 @@ package classpath
|
||||||
|
|
||||||
import java.net.URL
|
import java.net.URL
|
||||||
import java.util.Enumeration
|
import java.util.Enumeration
|
||||||
|
import java.util.Collections
|
||||||
|
|
||||||
/** A class loader that always fails to load classes and resources. */
|
/** A class loader that always fails to load classes and resources. */
|
||||||
final class NullLoader extends ClassLoader {
|
final class NullLoader extends ClassLoader {
|
||||||
override final def loadClass(className: String, resolve: Boolean): Class[_] = throw new ClassNotFoundException("No classes can be loaded from the null loader")
|
override final def loadClass(className: String, resolve: Boolean): Class[_] = throw new ClassNotFoundException("No classes can be loaded from the null loader")
|
||||||
override def getResource(name: String): URL = null
|
override def getResource(name: String): URL = null
|
||||||
override def getResources(name: String): Enumeration[URL] = null
|
override def getResources(name: String): Enumeration[URL] = Collections.enumeration(Collections.emptyList())
|
||||||
override def toString = "NullLoader"
|
override def toString = "NullLoader"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -77,9 +78,9 @@ class DualLoader(parentA: ClassLoader, aOnlyClasses: String => Boolean, aOnlyRes
|
||||||
else {
|
else {
|
||||||
val urlsA = parentA.getResources(name)
|
val urlsA = parentA.getResources(name)
|
||||||
val urlsB = parentB.getResources(name)
|
val urlsB = parentB.getResources(name)
|
||||||
if (urlsA eq null)
|
if (!urlsA.hasMoreElements)
|
||||||
urlsB
|
urlsB
|
||||||
else if (urlsB eq null)
|
else if (!urlsB.hasMoreElements)
|
||||||
urlsA
|
urlsA
|
||||||
else
|
else
|
||||||
new DualEnumeration(urlsA, urlsB)
|
new DualEnumeration(urlsA, urlsB)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue