Bug: https://bugs.gentoo.org/609176 Upstream PR: https://github.com/jbeder/yaml-cpp/pull/514 From a83a1b3a7bd0a5a4eb458d898b057f6a8d409b7e Mon Sep 17 00:00:00 2001 From: Peter-Levine Date: Mon, 24 Jul 2017 02:00:24 -0400 Subject: [PATCH] Fix segfault in gmock when running tests Taken from https://github.com/google/googletest/issues/705#issuecomment-235067917 --- test/gmock-1.7.0/include/gmock/gmock-spec-builders.h | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/test/gmock-1.7.0/include/gmock/gmock-spec-builders.h b/test/gmock-1.7.0/include/gmock/gmock-spec-builders.h index 312fbe87..2dd733b6 100644 --- a/test/gmock-1.7.0/include/gmock/gmock-spec-builders.h +++ b/test/gmock-1.7.0/include/gmock/gmock-spec-builders.h @@ -1370,6 +1370,8 @@ class ActionResultHolder : public UntypedActionResultHolderBase { template <> class ActionResultHolder : public UntypedActionResultHolderBase { public: + explicit ActionResultHolder() {} + void GetValueAndDelete() const { delete this; } virtual void PrintAsActionResult(::std::ostream* /* os */) const {} @@ -1381,7 +1383,7 @@ class ActionResultHolder : public UntypedActionResultHolderBase { const typename Function::ArgumentTuple& args, const string& call_description) { func_mocker->PerformDefaultAction(args, call_description); - return NULL; + return new ActionResultHolder(); } // Performs the given action and returns NULL. @@ -1390,7 +1392,7 @@ class ActionResultHolder : public UntypedActionResultHolderBase { const Action& action, const typename Function::ArgumentTuple& args) { action.Perform(args); - return NULL; + return new ActionResultHolder(); } };