From 652182c4d30d4897138c288f8044432c502567c5 Mon Sep 17 00:00:00 2001 From: Daniel Zhang Date: Mon, 12 Feb 2024 22:50:58 -0500 Subject: No need to std::move local variable to return value - when no std::move is used, local variable that is returned is directly constructed in the address of the return value - when std::move is used, the return value has to be move constructed from the rvalue of std::move, resulting in one more ctor call, not to mention the added code complexity - See Return Value Optimization in Effective Modern C++ by Scott Meyer, Item 25 - also delete unrelated outdated comment Test: compiles and runs Change-Id: I1b71ea01c6ab1788432e846d9feeb2df608e6b6d Signed-off-by: Daniel Zhang --- libs/androidfw/Asset.cpp | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'libs/androidfw/Asset.cpp') diff --git a/libs/androidfw/Asset.cpp b/libs/androidfw/Asset.cpp index 43a70c176a83..5a4cff0c319e 100644 --- a/libs/androidfw/Asset.cpp +++ b/libs/androidfw/Asset.cpp @@ -309,9 +309,8 @@ Asset::Asset(void) return NULL; } - // We succeeded, so relinquish control of dataMap pAsset->mAccessMode = mode; - return std::move(pAsset); + return pAsset; } /* @@ -328,9 +327,8 @@ Asset::Asset(void) return NULL; } - // We succeeded, so relinquish control of dataMap pAsset->mAccessMode = mode; - return std::move(pAsset); + return pAsset; } /* -- cgit v1.2.3-59-g8ed1b