summaryrefslogtreecommitdiff
path: root/core/fpdfapi/render/cpdf_pagerendercache.h
diff options
context:
space:
mode:
authorLei Zhang <thestig@chromium.org>2018-10-02 19:43:32 +0000
committerChromium commit bot <commit-bot@chromium.org>2018-10-02 19:43:32 +0000
commit7f47c50227fb4af93b58c6687786130c42b76333 (patch)
treeca24aa1921c94487ccfb5cab2c7a9111062497d5 /core/fpdfapi/render/cpdf_pagerendercache.h
parent66601c4c3d89afc6b9b41a5d14359fe94222cc3a (diff)
downloadpdfium-7f47c50227fb4af93b58c6687786130c42b76333.tar.xz
Use smart pointers in CPDF_PageRenderCache.
Use std::unique_ptr and MaybeOwned, instead of manual memory management. Change-Id: I5f08abd869245fb55b7e868621369ff3ea34146f Reviewed-on: https://pdfium-review.googlesource.com/43211 Commit-Queue: Lei Zhang <thestig@chromium.org> Reviewed-by: Henrique Nakashima <hnakashima@chromium.org>
Diffstat (limited to 'core/fpdfapi/render/cpdf_pagerendercache.h')
-rw-r--r--core/fpdfapi/render/cpdf_pagerendercache.h14
1 files changed, 8 insertions, 6 deletions
diff --git a/core/fpdfapi/render/cpdf_pagerendercache.h b/core/fpdfapi/render/cpdf_pagerendercache.h
index 8f0cb59414..5cfdebb812 100644
--- a/core/fpdfapi/render/cpdf_pagerendercache.h
+++ b/core/fpdfapi/render/cpdf_pagerendercache.h
@@ -8,8 +8,10 @@
#define CORE_FPDFAPI_RENDER_CPDF_PAGERENDERCACHE_H_
#include <map>
+#include <memory>
#include "core/fxcrt/fx_system.h"
+#include "core/fxcrt/maybe_owned.h"
#include "core/fxcrt/retain_ptr.h"
#include "core/fxcrt/unowned_ptr.h"
@@ -30,7 +32,7 @@ class CPDF_PageRenderCache {
void ResetBitmap(const RetainPtr<CPDF_Image>& pImage);
CPDF_Page* GetPage() const { return m_pPage.Get(); }
CPDF_ImageCacheEntry* GetCurImageCacheEntry() const {
- return m_pCurImageCacheEntry;
+ return m_pCurImageCacheEntry.Get();
}
bool StartGetCachedBitmap(const RetainPtr<CPDF_Image>& pImage,
@@ -45,11 +47,11 @@ class CPDF_PageRenderCache {
void ClearImageCacheEntry(CPDF_Stream* pStream);
UnownedPtr<CPDF_Page> const m_pPage;
- CPDF_ImageCacheEntry* m_pCurImageCacheEntry;
- std::map<CPDF_Stream*, CPDF_ImageCacheEntry*> m_ImageCache;
- uint32_t m_nTimeCount;
- uint32_t m_nCacheSize;
- bool m_bCurFindCache;
+ std::map<CPDF_Stream*, std::unique_ptr<CPDF_ImageCacheEntry>> m_ImageCache;
+ MaybeOwned<CPDF_ImageCacheEntry> m_pCurImageCacheEntry;
+ uint32_t m_nTimeCount = 0;
+ uint32_t m_nCacheSize = 0;
+ bool m_bCurFindCache = false;
};
#endif // CORE_FPDFAPI_RENDER_CPDF_PAGERENDERCACHE_H_