RFR: 8349812: (fs) Files.newByteChannel with empty path name and CREATE_NEW throws unexpected exception [v2]

Maxim Kartashev mkartashev at openjdk.org
Wed Feb 12 08:43:47 UTC 2025


> `UnixFileChannelFactory.open()` checks for the current directory by looking at the first byte of the name, which in case of an empty path is simply not there. This check throws an `ArrayIndexOutOfBoundsException` and prevents the correct exception from being thrown.
> 
> The suggested solution is to use another method that translates a path name into a byte array called `getByteArrayForSysCalls()` that is specifically designed to handle the case of empty path names.
> 
> Tested by running `java/nio` tests on Linux.

Maxim Kartashev has updated the pull request incrementally with one additional commit since the last revision:

  Updated the copyright year and added the bugid to the test

-------------

Changes:
  - all: https://git.openjdk.org/jdk/pull/23560/files
  - new: https://git.openjdk.org/jdk/pull/23560/files/0a1a7ead..d0d42a4d

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=23560&range=01
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=23560&range=00-01

  Stats: 3 lines in 2 files changed: 0 ins; 0 del; 3 mod
  Patch: https://git.openjdk.org/jdk/pull/23560.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/23560/head:pull/23560

PR: https://git.openjdk.org/jdk/pull/23560


More information about the nio-dev mailing list