[jdk16] RFR: 8259028: ClassCastException when using custom filesystem with wrapper FileChannel impl
Maurizio Cimadamore
mcimadamore at openjdk.java.net
Wed Jan 6 16:16:07 UTC 2021
This patch tweaks `MemorySegment::mapFile` so that it will throw `IllegalArgumentException` whenever the path to be mapped is associated with a custom file system provider.
The check in the implementation is heavily borrowed by what `UnixDomainSocketAddress::of(Path)` does (thanks Alan for the tip!). Not only we have to check if file system is the default one, but also if the default FS belongs to java.base (since that can be overridden).
The test simply check that paths coming from the (internal) JRT file system are not supported by the factory.
-------------
Commit messages:
- Tweak javadoc
- Clarify javadoc of MemorySegment::mapFile w.r.t. custom file systems
Changes: https://git.openjdk.java.net/jdk16/pull/90/files
Webrev: https://webrevs.openjdk.java.net/?repo=jdk16&pr=90&range=00
Issue: https://bugs.openjdk.java.net/browse/JDK-8259028
Stats: 22 lines in 3 files changed: 16 ins; 1 del; 5 mod
Patch: https://git.openjdk.java.net/jdk16/pull/90.diff
Fetch: git fetch https://git.openjdk.java.net/jdk16 pull/90/head:pull/90
PR: https://git.openjdk.java.net/jdk16/pull/90
More information about the core-libs-dev
mailing list