> Created a test called NullCallerGetResource to test
> Module::getResourceAsStream and Class::getResourceAsStream from the native
> level.
>
> At the java level the test builds a test module called 'n' which opens the
> package 'open' to everyone. There is also a package 'closed' which is neither
> opened or exported. Both packages have a text file called 'test.txt'. The
> open package has a class called OpenResources and the closed package has a
> class called ClosedResources. The native test is launched with the test
> module n added.
>
> At the native level the test tries to read both the open and closed resource
> from both the classes and the module. It performs the equivalent of the
> following java operations:
>
> Class c = open.OpenResources.fetchClass();
> InputStream in = c.getResourceAsStream("test.txt");
> assert(in != null); in.close();
>
> Module n = c.getModule();
> in = n.getResourceAsStream("open/test.txt");
> assert(in != null); in.close();
>
> Class closed = closed.ClosedResources.fetchClass();
> assert(closedsStream("test.txt") == null);
> assert(n.getResourceAsStream("closed/test.txt") == null);
>
> The test initially threw an NPE when trying to fetch the open resource. The
> Module class was fixed by removing the fragment with the (caller == null)
> test in getResourceAsStream, and changing the call to isOpen(String,Module)
> to use EVERYONE_MODULE if the caller module is null.
Tim Prinzing has updated the pull request incrementally with one additional
commit since the last revision:
revert Module::isOpen
-------------
Changes:
- all: https://git.openjdk.java.net/jdk/pull/8134/files
- new: https://git.openjdk.java.net/jdk/pull/8134/files/4b344e4d..912896d7
Webrevs:
- full: https://webrevs.openjdk.java.net/?repo=jdk&pr=8134&range=02
- incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=8134&range=01-02
Stats: 10 lines in 2 files changed: 5 ins; 0 del; 5 mod
Patch: https://git.openjdk.java.net/jdk/pull/8134.diff
Fetch: git fetch https://git.openjdk.java.net/jdk pull/8134/head:pull/8134
PR: https://git.openjdk.java.net/jdk/pull/8134