On Thu, 21 Aug 2025 06:35:44 GMT, David Holmes <dhol...@openjdk.org> wrote:
>> src/hotspot/os/aix/os_aix.cpp line 1055: >> >>> 1053: if (ebuf != nullptr && ebuflen > 0) { >>> 1054: os::snprintf_checked(ebuf, ebuflen - 1, "%s, LIBPATH=%s, >>> LD_LIBRARY_PATH=%s : %s", >>> 1055: filename, ::getenv("LIBPATH"), >>> ::getenv("LD_LIBRARY_PATH"), error_report); >> >> Suggestion: >> >> (void) os::snprintf(ebuf, ebuflen - 1, "%s, LIBPATH=%s, >> LD_LIBRARY_PATH=%s : %s", >> filename, ::getenv("LIBPATH"), >> ::getenv("LD_LIBRARY_PATH"), error_report); >> >> This could easily truncate, based on LIBPATH and LD_LIBRARY_PATH. > > Yes but again if that happens during testing we need to know and fix the > buffer size to get the non-truncated values. In this case the buffer size comes from shared code. Whatever size we choose for the static buffer, we can trigger the assert by setting LIBPATH and LD_LIBRARY_PATH to very long strings. This is just the error message, so it might be OK to truncate it. Otherwise we could need to allocate the buffer using malloc. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/26849#discussion_r2290181959