RFR: 8303070: Memory leak in DCmdArgument<char*>::parse_value

David Holmes dholmes at openjdk.org
Fri Feb 24 00:36:17 UTC 2023


If we have a default value for the char* DCmdArgument we copy it into the `_value` field using `parse_value` to make a copy in C-heap. If we then parse an actual argument value, we replace the default but don't free it. The parse method needs to use realloc.

Thanks to @jcking for spotting the cause.

Testing: tiers 1-3 

Thanks.

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

Commit messages:
 - Removed dead code - no Java exceptions are possible when parsing strings.
 - 8303070: Memory leak in DCmdArgument<char*>::parse_value

Changes: https://git.openjdk.org/jdk/pull/12737/files
 Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=12737&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8303070
  Stats: 8 lines in 1 file changed: 2 ins; 5 del; 1 mod
  Patch: https://git.openjdk.org/jdk/pull/12737.diff
  Fetch: git fetch https://git.openjdk.org/jdk pull/12737/head:pull/12737

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


More information about the hotspot-runtime-dev mailing list