Pass retained arguments to StartGetCachedBitmap()
Bug: pdfium:1843
Change-Id: I41e4bb35556dddc0b9f038acc0ebcf7d9408c433
Reviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/95573
Reviewed-by: Lei Zhang <thestig@chromium.org>
Commit-Queue: Tom Sepez <tsepez@chromium.org>
diff --git a/core/fpdfapi/render/cpdf_imagecacheentry.cpp b/core/fpdfapi/render/cpdf_imagecacheentry.cpp
index e43a4df..355faaa 100644
--- a/core/fpdfapi/render/cpdf_imagecacheentry.cpp
+++ b/core/fpdfapi/render/cpdf_imagecacheentry.cpp
@@ -20,8 +20,8 @@
#include "core/fxge/dib/cfx_dibitmap.h"
CPDF_ImageCacheEntry::CPDF_ImageCacheEntry(CPDF_Document* pDoc,
- const RetainPtr<CPDF_Image>& pImage)
- : m_pDocument(pDoc), m_pImage(pImage) {}
+ RetainPtr<CPDF_Image> pImage)
+ : m_pDocument(pDoc), m_pImage(std::move(pImage)) {}
CPDF_ImageCacheEntry::~CPDF_ImageCacheEntry() = default;
diff --git a/core/fpdfapi/render/cpdf_imagecacheentry.h b/core/fpdfapi/render/cpdf_imagecacheentry.h
index 996e110..802da84 100644
--- a/core/fpdfapi/render/cpdf_imagecacheentry.h
+++ b/core/fpdfapi/render/cpdf_imagecacheentry.h
@@ -21,8 +21,7 @@
class CPDF_ImageCacheEntry {
public:
- CPDF_ImageCacheEntry(CPDF_Document* pDoc,
- const RetainPtr<CPDF_Image>& pImage);
+ CPDF_ImageCacheEntry(CPDF_Document* pDoc, RetainPtr<CPDF_Image> pImage);
~CPDF_ImageCacheEntry();
void Reset();
diff --git a/core/fpdfapi/render/cpdf_pagerendercache.cpp b/core/fpdfapi/render/cpdf_pagerendercache.cpp
index 5e376c3..60060b5 100644
--- a/core/fpdfapi/render/cpdf_pagerendercache.cpp
+++ b/core/fpdfapi/render/cpdf_pagerendercache.cpp
@@ -7,6 +7,7 @@
#include "core/fpdfapi/render/cpdf_pagerendercache.h"
#include <algorithm>
+#include <utility>
#include <vector>
#include "core/fpdfapi/page/cpdf_image.h"
@@ -73,7 +74,7 @@
}
bool CPDF_PageRenderCache::StartGetCachedBitmap(
- const RetainPtr<CPDF_Image>& pImage,
+ RetainPtr<CPDF_Image> pImage,
const CPDF_RenderStatus* pRenderStatus,
bool bStdCS) {
const CPDF_Stream* pStream = pImage->GetStream();
@@ -82,8 +83,8 @@
if (m_bCurFindCache) {
m_pCurImageCacheEntry = it->second.get();
} else {
- m_pCurImageCacheEntry =
- std::make_unique<CPDF_ImageCacheEntry>(m_pPage->GetDocument(), pImage);
+ m_pCurImageCacheEntry = std::make_unique<CPDF_ImageCacheEntry>(
+ m_pPage->GetDocument(), std::move(pImage));
}
CPDF_DIB::LoadState ret = m_pCurImageCacheEntry->StartGetCachedBitmap(
m_pPage->GetPageResources(), pRenderStatus, bStdCS);
diff --git a/core/fpdfapi/render/cpdf_pagerendercache.h b/core/fpdfapi/render/cpdf_pagerendercache.h
index e77c81a..b2cbc16 100644
--- a/core/fpdfapi/render/cpdf_pagerendercache.h
+++ b/core/fpdfapi/render/cpdf_pagerendercache.h
@@ -39,7 +39,7 @@
return m_pCurImageCacheEntry.Get();
}
- bool StartGetCachedBitmap(const RetainPtr<CPDF_Image>& pImage,
+ bool StartGetCachedBitmap(RetainPtr<CPDF_Image> pImage,
const CPDF_RenderStatus* pRenderStatus,
bool bStdCS);