On Thu, 25 Jun 2026 17:17:39 GMT, Ashay Rane <[email protected]> wrote:

> On both ReFS and removable drives, the primary path in libGetXSpace.c,
> (which calls `GetDiskSpaceInformationW()` API function) fails because
> the API call fails.  When that happens, the code throws an exception,
> causing the test to fail.
> 
> The key change in this patch is to switch to the fallback path (of
> calling `GetDiskFreeSpaceExW()` to estimate the disk space) when
> `GetDiskSpaceInformationW()` fails, making the test pass on machines
> that have such non-standard volumes.  This has the ancillary benefit of
> handling _all_ kinds of removable drives, so this patch removes the
> special case for handling CDROM drives (whose code shelled out to "df",
> which doesn't exist outside of Cygwin and MSys/MinGW).
> 
> This patch also fixes the return types and their handling for both
> `GetDiskSpaceInformationW()` and `GetDiskFreeSpaceExW()` to match the
> Windows API documentation.
> 
> ---------
> - [x] I confirm that I make this contribution in accordance with the [OpenJDK 
> Interim AI Policy](https://openjdk.org/legal/ai).

test/jdk/java/io/File/libGetXSpace.c line 107:

> 105:     if (totalSpaceIsEstimated == JNI_TRUE) {
> 106:         // if GetDiskSpaceInformationW is unavailable ("The specified
> 107:         // procedure could not be found"), fall back to 
> GetDiskFreeSpaceExW

Hello Ashay, this comment might need rewording since it's no longer accurate. 
Maybe just say "fall back to GetDiskFreeSpaceExW"?

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

PR Review Comment: https://git.openjdk.org/jdk/pull/31682#discussion_r3602092638

Reply via email to