On Tue, 29 Mar 2022 15:41:29 GMT, Ioi Lam <ik...@openjdk.org> wrote: >> `JvmtiEnv::SetSystemProperty` eventually calls `PathString::set_value` in >> arguments.cpp, which aborts the VM when it fails to allocate a string copy >> of the property value. >> >> >> bool PathString::set_value(const char *value) { >> if (_value != NULL) { >> FreeHeap(_value); >> } >> _value = AllocateHeap(strlen(value)+1, mtArguments ); >> // should pass AllocFailStrategy::RETURN_NULL -----^ >> assert(_value != NULL, "Unable to allocate space for new path value"); >> >> >> This should be fixed so that `JvmtiEnv::SetSystemProperty` can return >> `JVMTI_ERROR_OUT_OF_MEMORY` in case of OOM. See >> https://docs.oracle.com/en/java/javase/17/docs/specs/jvmti.html#SetSystemProperty > > Ioi Lam has updated the pull request with a new target base due to a merge or > a rebase. The incremental webrev excludes the unrelated changes brought in by > the merge/rebase. The pull request contains four additional commits since the > last revision: > > - Merge branch 'master' of https://github.com/openjdk/jdk into > 8207025-simplify-pathstring-setvalue > - @dholmes-ora comments: simplify the changes > - @dholmes-ora comments: changed implementation to work with > JvmtiEnv::SetSystemProperty > - 8207025: Simplify PathString::set_value() in arguments.cpp
Marked as reviewed by amenkov (Reviewer). ------------- PR: https://git.openjdk.java.net/jdk/pull/7981