diff options
author | Abseil Team <absl-team@google.com> | 2023-02-15 23:21:19 (GMT) |
---|---|---|
committer | Copybara-Service <copybara-worker@google.com> | 2023-02-15 23:22:10 (GMT) |
commit | f063cd25c90cbd4089a0ff96f5991df4f2721338 (patch) | |
tree | 5bad6a1e75e225fbac4d79058c13fe05ef78e151 /googletest/test | |
parent | 2057566e4e16c88f1fea4d6c96b2e2bfb87507a6 (diff) | |
download | googletest-f063cd25c90cbd4089a0ff96f5991df4f2721338.zip googletest-f063cd25c90cbd4089a0ff96f5991df4f2721338.tar.gz googletest-f063cd25c90cbd4089a0ff96f5991df4f2721338.tar.bz2 |
Remove strdup usage
PiperOrigin-RevId: 509947007
Change-Id: I31e1274afa889776829c877c40c9af589298dcf2
Diffstat (limited to 'googletest/test')
-rw-r--r-- | googletest/test/gtest_unittest.cc | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/googletest/test/gtest_unittest.cc b/googletest/test/gtest_unittest.cc index ecffa37..580ce83 100644 --- a/googletest/test/gtest_unittest.cc +++ b/googletest/test/gtest_unittest.cc @@ -60,6 +60,7 @@ TEST(CommandLineFlagsTest, CanBeAccessedInCodeOnceGTestHIsIncluded) { #include <cstdint> #include <map> +#include <memory> #include <ostream> #include <set> #include <string> @@ -424,10 +425,12 @@ class FormatEpochTimeInMillisAsIso8601Test : public Test { private: void SetUp() override { - saved_tz_ = nullptr; + saved_tz_.reset(); - GTEST_DISABLE_MSC_DEPRECATED_PUSH_(/* getenv, strdup: deprecated */) - if (getenv("TZ")) saved_tz_ = strdup(getenv("TZ")); + GTEST_DISABLE_MSC_DEPRECATED_PUSH_(/* getenv: deprecated */) + if (const char* tz = getenv("TZ")) { + saved_tz_ = std::make_unique<std::string>(tz); + } GTEST_DISABLE_MSC_DEPRECATED_POP_() // Set up the time zone for FormatEpochTimeInMillisAsIso8601 to use. We @@ -437,9 +440,8 @@ class FormatEpochTimeInMillisAsIso8601Test : public Test { } void TearDown() override { - SetTimeZone(saved_tz_); - free(const_cast<char*>(saved_tz_)); - saved_tz_ = nullptr; + SetTimeZone(saved_tz_ != nullptr ? saved_tz_->c_str() : nullptr); + saved_tz_.reset(); } static void SetTimeZone(const char* time_zone) { @@ -471,7 +473,7 @@ class FormatEpochTimeInMillisAsIso8601Test : public Test { #endif } - const char* saved_tz_; + std::unique_ptr<std::string> saved_tz_; // Empty and null are different here }; const TimeInMillis FormatEpochTimeInMillisAsIso8601Test::kMillisPerSec; |