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