diff options
Diffstat (limited to 'xfa/fde/cfde_txtedtpage.cpp')
-rw-r--r-- | xfa/fde/cfde_txtedtpage.cpp | 21 |
1 files changed, 11 insertions, 10 deletions
diff --git a/xfa/fde/cfde_txtedtpage.cpp b/xfa/fde/cfde_txtedtpage.cpp index 4bf3e9fb5e..c3d21430bd 100644 --- a/xfa/fde/cfde_txtedtpage.cpp +++ b/xfa/fde/cfde_txtedtpage.cpp @@ -412,24 +412,25 @@ const CFX_RectF& CFDE_TxtEdtPage::GetContentsBox() { return m_rtPageContents; } -FX_POSITION CFDE_TxtEdtPage::GetFirstPosition() { - if (m_Pieces.empty()) - return nullptr; - return (FX_POSITION)1; +size_t CFDE_TxtEdtPage::GetFirstPosition() { + return m_Pieces.empty() ? 0 : 1; } -FDE_TEXTEDITPIECE* CFDE_TxtEdtPage::GetNext(FX_POSITION& pos, +FDE_TEXTEDITPIECE* CFDE_TxtEdtPage::GetNext(size_t* pos, IFDE_VisualSet*& pVisualSet) { + ASSERT(pos); + if (!m_pTextSet) { - pos = nullptr; + *pos = 0; return nullptr; } - int32_t nPos = (int32_t)(uintptr_t)pos; + + size_t nPos = *pos; pVisualSet = m_pTextSet.get(); - if (nPos + 1 > pdfium::CollectionSize<int32_t>(m_Pieces)) - pos = nullptr; + if (nPos + 1 > m_Pieces.size()) + *pos = 0; else - pos = (FX_POSITION)(uintptr_t)(nPos + 1); + *pos = nPos + 1; return &m_Pieces[nPos - 1]; } |