diff options
Diffstat (limited to 'core')
-rw-r--r-- | core/fpdfapi/edit/cpdf_pagecontentgenerator_unittest.cpp | 4 | ||||
-rw-r--r-- | core/fpdfapi/font/cpdf_type3font.cpp | 3 | ||||
-rw-r--r-- | core/fpdfapi/page/cpdf_form.cpp | 12 | ||||
-rw-r--r-- | core/fpdfapi/page/cpdf_form.h | 11 | ||||
-rw-r--r-- | core/fpdfapi/page/cpdf_streamcontentparser.cpp | 3 | ||||
-rw-r--r-- | core/fpdfapi/page/cpdf_tilingpattern.cpp | 2 | ||||
-rw-r--r-- | core/fpdfapi/render/cpdf_renderstatus.cpp | 2 | ||||
-rw-r--r-- | core/fpdfdoc/cpdf_annot.cpp | 2 | ||||
-rw-r--r-- | core/fpdfdoc/cpdf_formcontrol.cpp | 2 |
9 files changed, 24 insertions, 17 deletions
diff --git a/core/fpdfapi/edit/cpdf_pagecontentgenerator_unittest.cpp b/core/fpdfapi/edit/cpdf_pagecontentgenerator_unittest.cpp index c7a98c9493..1dd6d25e2a 100644 --- a/core/fpdfapi/edit/cpdf_pagecontentgenerator_unittest.cpp +++ b/core/fpdfapi/edit/cpdf_pagecontentgenerator_unittest.cpp @@ -298,7 +298,7 @@ TEST_F(CPDF_PageContentGeneratorTest, ProcessEmptyForm) { // Create an empty form. auto pTestForm = pdfium::MakeUnique<CPDF_Form>(pDoc.get(), nullptr, pStream.get()); - pTestForm->ParseContent(nullptr, nullptr, nullptr); + pTestForm->ParseContent(); ASSERT_TRUE(pTestForm->IsParsed()); // The generated stream for the empty form should be an empty string. @@ -324,7 +324,7 @@ TEST_F(CPDF_PageContentGeneratorTest, ProcessFormWithPath) { // Create a form with a non-empty stream. auto pTestForm = pdfium::MakeUnique<CPDF_Form>(pDoc.get(), nullptr, pStream.get()); - pTestForm->ParseContent(nullptr, nullptr, nullptr); + pTestForm->ParseContent(); ASSERT_TRUE(pTestForm->IsParsed()); CPDF_PageContentGenerator generator(pTestForm.get()); diff --git a/core/fpdfapi/font/cpdf_type3font.cpp b/core/fpdfapi/font/cpdf_type3font.cpp index e13deaa56b..2af1dac44f 100644 --- a/core/fpdfapi/font/cpdf_type3font.cpp +++ b/core/fpdfapi/font/cpdf_type3font.cpp @@ -114,7 +114,8 @@ CPDF_Type3Char* CPDF_Type3Font::LoadChar(uint32_t charcode) { // can change as a result. Thus after it returns, check the cache again for // a cache hit. m_CharLoadingDepth++; - pNewChar->m_pForm->ParseContent(nullptr, nullptr, pNewChar.get()); + pNewChar->m_pForm->ParseContentWithParams(nullptr, nullptr, pNewChar.get(), + 0); m_CharLoadingDepth--; it = m_CacheMap.find(charcode); if (it != m_CacheMap.end()) diff --git a/core/fpdfapi/page/cpdf_form.cpp b/core/fpdfapi/page/cpdf_form.cpp index c2170ac4e7..c5d9cbffcf 100644 --- a/core/fpdfapi/page/cpdf_form.cpp +++ b/core/fpdfapi/page/cpdf_form.cpp @@ -44,10 +44,14 @@ void CPDF_Form::StartParse(CPDF_AllStates* pGraphicStates, m_ParseState = CONTENT_PARSING; } -void CPDF_Form::ParseContent(CPDF_AllStates* pGraphicStates, - const CFX_Matrix* pParentMatrix, - CPDF_Type3Char* pType3Char, - int level) { +void CPDF_Form::ParseContent() { + ParseContentWithParams(nullptr, nullptr, nullptr, 0); +} + +void CPDF_Form::ParseContentWithParams(CPDF_AllStates* pGraphicStates, + const CFX_Matrix* pParentMatrix, + CPDF_Type3Char* pType3Char, + int level) { StartParse(pGraphicStates, pParentMatrix, pType3Char, level); ContinueParse(nullptr); } diff --git a/core/fpdfapi/page/cpdf_form.h b/core/fpdfapi/page/cpdf_form.h index 910f38fd08..2cce800f23 100644 --- a/core/fpdfapi/page/cpdf_form.h +++ b/core/fpdfapi/page/cpdf_form.h @@ -24,16 +24,17 @@ class CPDF_Form : public CPDF_PageObjectHolder { CPDF_Dictionary* pParentResources = nullptr); ~CPDF_Form() override; - void ParseContent(CPDF_AllStates* pGraphicStates, - const CFX_Matrix* pParentMatrix, - CPDF_Type3Char* pType3Char, - int level = 0); + void ParseContent(); + void ParseContentWithParams(CPDF_AllStates* pGraphicStates, + const CFX_Matrix* pParentMatrix, + CPDF_Type3Char* pType3Char, + int level); private: void StartParse(CPDF_AllStates* pGraphicStates, const CFX_Matrix* pParentMatrix, CPDF_Type3Char* pType3Char, - int level = 0); + int level); }; #endif // CORE_FPDFAPI_PAGE_CPDF_FORM_H_ diff --git a/core/fpdfapi/page/cpdf_streamcontentparser.cpp b/core/fpdfapi/page/cpdf_streamcontentparser.cpp index a6af91d9ff..7bd6b50123 100644 --- a/core/fpdfapi/page/cpdf_streamcontentparser.cpp +++ b/core/fpdfapi/page/cpdf_streamcontentparser.cpp @@ -775,7 +775,8 @@ void CPDF_StreamContentParser::AddForm(CPDF_Stream* pStream) { status.m_GraphState = m_pCurStates->m_GraphState; status.m_ColorState = m_pCurStates->m_ColorState; status.m_TextState = m_pCurStates->m_TextState; - pFormObj->m_pForm->ParseContent(&status, nullptr, nullptr, m_Level + 1); + pFormObj->m_pForm->ParseContentWithParams(&status, nullptr, nullptr, + m_Level + 1); if (!m_pObjectHolder->BackgroundAlphaNeeded() && pFormObj->m_pForm->BackgroundAlphaNeeded()) { m_pObjectHolder->SetBackgroundAlphaNeeded(true); diff --git a/core/fpdfapi/page/cpdf_tilingpattern.cpp b/core/fpdfapi/page/cpdf_tilingpattern.cpp index 65542a27b5..a5252578a5 100644 --- a/core/fpdfapi/page/cpdf_tilingpattern.cpp +++ b/core/fpdfapi/page/cpdf_tilingpattern.cpp @@ -49,7 +49,7 @@ bool CPDF_TilingPattern::Load() { const CFX_Matrix& matrix = parent_matrix(); m_pForm = pdfium::MakeUnique<CPDF_Form>(document(), nullptr, pStream); - m_pForm->ParseContent(nullptr, &matrix, nullptr); + m_pForm->ParseContentWithParams(nullptr, &matrix, nullptr, 0); m_BBox = pDict->GetRectFor("BBox"); return true; } diff --git a/core/fpdfapi/render/cpdf_renderstatus.cpp b/core/fpdfapi/render/cpdf_renderstatus.cpp index 380914fd27..316717c120 100644 --- a/core/fpdfapi/render/cpdf_renderstatus.cpp +++ b/core/fpdfapi/render/cpdf_renderstatus.cpp @@ -2545,7 +2545,7 @@ CFX_RetainPtr<CFX_DIBitmap> CPDF_RenderStatus::LoadSMask( CPDF_Form form(m_pContext->GetDocument(), m_pContext->GetPageResources(), pGroup); - form.ParseContent(nullptr, nullptr, nullptr); + form.ParseContent(); CFX_DefaultRenderDevice bitmap_device; bool bLuminosity = pSMaskDict->GetStringFor("S") != "Alpha"; diff --git a/core/fpdfdoc/cpdf_annot.cpp b/core/fpdfdoc/cpdf_annot.cpp index 89fd1c9740..ea15436565 100644 --- a/core/fpdfdoc/cpdf_annot.cpp +++ b/core/fpdfdoc/cpdf_annot.cpp @@ -207,7 +207,7 @@ CPDF_Form* CPDF_Annot::GetAPForm(const CPDF_Page* pPage, AppearanceMode mode) { auto pNewForm = pdfium::MakeUnique<CPDF_Form>( m_pDocument.Get(), pPage->m_pResources.Get(), pStream); - pNewForm->ParseContent(nullptr, nullptr, nullptr); + pNewForm->ParseContent(); CPDF_Form* pResult = pNewForm.get(); m_APMap[pStream] = std::move(pNewForm); diff --git a/core/fpdfdoc/cpdf_formcontrol.cpp b/core/fpdfdoc/cpdf_formcontrol.cpp index 322abc0eb1..555d19660f 100644 --- a/core/fpdfdoc/cpdf_formcontrol.cpp +++ b/core/fpdfdoc/cpdf_formcontrol.cpp @@ -182,7 +182,7 @@ void CPDF_FormControl::DrawControl(CFX_RenderDevice* pDevice, matrix.Concat(*pMatrix); CPDF_Form form(m_pField->GetForm()->m_pDocument.Get(), m_pField->GetForm()->m_pFormDict->GetDictFor("DR"), pStream); - form.ParseContent(nullptr, nullptr, nullptr); + form.ParseContent(); CPDF_RenderContext context(pPage); context.AppendLayer(&form, &matrix); context.Render(pDevice, pOptions, nullptr); |