From 710034286ac4b5cb6c842b188a68d256c89357f6 Mon Sep 17 00:00:00 2001 From: tstuefe Date: Tue, 12 Mar 2024 14:52:20 +0100 Subject: [PATCH] JDK-8327986-ASAN-reports-use-after-free-in-DirectivesParserTest-empty_object_vm --- test/hotspot/gtest/compiler/test_directivesParser.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/test/hotspot/gtest/compiler/test_directivesParser.cpp b/test/hotspot/gtest/compiler/test_directivesParser.cpp index 2e36e09ccc116..7b78186316e6f 100644 --- a/test/hotspot/gtest/compiler/test_directivesParser.cpp +++ b/test/hotspot/gtest/compiler/test_directivesParser.cpp @@ -31,15 +31,16 @@ class DirectivesParserTest : public ::testing::Test{ protected: - const char* const _locale; + char* const _locale; ResourceMark rm; stringStream stream; // These tests require the "C" locale to correctly parse decimal values - DirectivesParserTest() : _locale(setlocale(LC_NUMERIC, nullptr)) { + DirectivesParserTest() : _locale(os::strdup(setlocale(LC_NUMERIC, nullptr), mtTest)) { setlocale(LC_NUMERIC, "C"); } ~DirectivesParserTest() { setlocale(LC_NUMERIC, _locale); + os::free(_locale); } void test_negative(const char* text) {