From 638f40b7dd23bbb07c268291a3b0c6233fe55ec2 Mon Sep 17 00:00:00 2001 From: jonawals Date: Fri, 21 May 2021 12:19:19 +0100 Subject: [PATCH] Add proper exhange to payload release --- .../Code/Source/Process/JobRunner/TestImpactProcessJob.h | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/Code/Tools/TestImpactFramework/Runtime/Code/Source/Process/JobRunner/TestImpactProcessJob.h b/Code/Tools/TestImpactFramework/Runtime/Code/Source/Process/JobRunner/TestImpactProcessJob.h index f1629adda4..47afe1ca3e 100644 --- a/Code/Tools/TestImpactFramework/Runtime/Code/Source/Process/JobRunner/TestImpactProcessJob.h +++ b/Code/Tools/TestImpactFramework/Runtime/Code/Source/Process/JobRunner/TestImpactProcessJob.h @@ -38,7 +38,8 @@ namespace TestImpact const AZStd::optional& GetPayload() const; //! Facilitates the client consuming the payload. - AZStd::optional&& ReleasePayload(); + //! @note It is valid for a job life cycle to continue after having released its payload. + AZStd::optional ReleasePayload(); private: Info m_jobInfo; @@ -66,8 +67,8 @@ namespace TestImpact } template - AZStd::optional&& Job::ReleasePayload() + AZStd::optional Job::ReleasePayload() { - return AZStd::move(m_payload); + return AZStd::exchange(m_payload, AZStd::nullopt); } } // namespace TestImpact