Pass retained image to CPDF_ImageObject::SetImage() Turns out all callers are already passing rvalues, so no other modifications needed. Change-Id: I856e84fdb1bd33f8c38b0e1e227d87b5ea24fd58 Reviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/95770 Reviewed-by: Lei Zhang <thestig@chromium.org> Commit-Queue: Tom Sepez <tsepez@chromium.org>
diff --git a/core/fpdfapi/page/cpdf_imageobject.cpp b/core/fpdfapi/page/cpdf_imageobject.cpp index 345092c..0633ed1 100644 --- a/core/fpdfapi/page/cpdf_imageobject.cpp +++ b/core/fpdfapi/page/cpdf_imageobject.cpp
@@ -6,6 +6,8 @@ #include "core/fpdfapi/page/cpdf_imageobject.h" +#include <utility> + #include "core/fpdfapi/page/cpdf_docpagedata.h" #include "core/fpdfapi/page/cpdf_image.h" #include "core/fpdfapi/parser/cpdf_stream.h" @@ -50,9 +52,9 @@ SetRect(m_Matrix.TransformRect(kRect)); } -void CPDF_ImageObject::SetImage(const RetainPtr<CPDF_Image>& pImage) { +void CPDF_ImageObject::SetImage(RetainPtr<CPDF_Image> pImage) { MaybePurgeCache(); - m_pImage = pImage; + m_pImage = std::move(pImage); } RetainPtr<CPDF_Image> CPDF_ImageObject::GetImage() const {
diff --git a/core/fpdfapi/page/cpdf_imageobject.h b/core/fpdfapi/page/cpdf_imageobject.h index 5e0ee4b..af18da4 100644 --- a/core/fpdfapi/page/cpdf_imageobject.h +++ b/core/fpdfapi/page/cpdf_imageobject.h
@@ -28,7 +28,7 @@ const CPDF_ImageObject* AsImage() const override; void CalcBoundingBox(); - void SetImage(const RetainPtr<CPDF_Image>& pImage); + void SetImage(RetainPtr<CPDF_Image> pImage); RetainPtr<CPDF_Image> GetImage() const; RetainPtr<CFX_DIBitmap> GetIndependentBitmap() const;