Make some members const in CPWL_Icon. We can pass these at construct time, as they do not interact with the intervening Realize() call. Change-Id: Ifba7ebf3ba7ead9b41854ea4140aac3f1c3517b6 Reviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/64071 Reviewed-by: Lei Zhang <thestig@chromium.org> Commit-Queue: Tom Sepez <tsepez@chromium.org>
diff --git a/fpdfsdk/cpdfsdk_appstream.cpp b/fpdfsdk/cpdfsdk_appstream.cpp index 8c4a969..50cd8c1 100644 --- a/fpdfsdk/cpdfsdk_appstream.cpp +++ b/fpdfsdk/cpdfsdk_appstream.cpp
@@ -689,10 +689,8 @@ CPWL_Wnd::CreateParams cp; cp.dwFlags = PWS_VISIBLE; - CPWL_Icon icon(cp, nullptr); + CPWL_Icon icon(cp, pIconStream, &fit); icon.Realize(); - icon.SetIconFit(&fit); - icon.SetPDFStream(pIconStream); if (!icon.Move(rcIcon, false, false)) return ByteString();
diff --git a/fpdfsdk/pwl/cpwl_icon.cpp b/fpdfsdk/pwl/cpwl_icon.cpp index e64cadd..a720af4 100644 --- a/fpdfsdk/pwl/cpwl_icon.cpp +++ b/fpdfsdk/pwl/cpwl_icon.cpp
@@ -16,10 +16,10 @@ #include "core/fpdfdoc/cpdf_iconfit.h" #include "fpdfsdk/pwl/cpwl_wnd.h" -CPWL_Icon::CPWL_Icon( - const CreateParams& cp, - std::unique_ptr<IPWL_SystemHandler::PerWindowData> pAttachedData) - : CPWL_Wnd(cp, std::move(pAttachedData)) {} +CPWL_Icon::CPWL_Icon(const CreateParams& cp, + CPDF_Stream* pStream, + CPDF_IconFit* pFit) + : CPWL_Wnd(cp, nullptr), m_pPDFStream(pStream), m_pIconFit(pFit) {} CPWL_Icon::~CPWL_Icon() = default;
diff --git a/fpdfsdk/pwl/cpwl_icon.h b/fpdfsdk/pwl/cpwl_icon.h index db654f8..3e19f84 100644 --- a/fpdfsdk/pwl/cpwl_icon.h +++ b/fpdfsdk/pwl/cpwl_icon.h
@@ -19,13 +19,9 @@ class CPWL_Icon final : public CPWL_Wnd { public: - CPWL_Icon(const CreateParams& cp, - std::unique_ptr<IPWL_SystemHandler::PerWindowData> pAttachedData); + CPWL_Icon(const CreateParams& cp, CPDF_Stream* pStream, CPDF_IconFit* pFit); ~CPWL_Icon() override; - void SetIconFit(CPDF_IconFit* pIconFit) { m_pIconFit = pIconFit; } - void SetPDFStream(CPDF_Stream* pStream) { m_pPDFStream.Reset(pStream); } - // horizontal scale, vertical scale std::pair<float, float> GetScale(); @@ -42,8 +38,8 @@ // width, height std::pair<float, float> GetImageSize(); - RetainPtr<CPDF_Stream> m_pPDFStream; - UnownedPtr<CPDF_IconFit> m_pIconFit; + RetainPtr<CPDF_Stream> const m_pPDFStream; + UnownedPtr<CPDF_IconFit> const m_pIconFit; }; #endif // FPDFSDK_PWL_CPWL_ICON_H_