diff options
author | Lei Zhang <thestig@chromium.org> | 2017-03-17 15:14:19 -0700 |
---|---|---|
committer | Chromium commit bot <commit-bot@chromium.org> | 2017-03-17 22:54:26 +0000 |
commit | 85f019a8e7d33cbba368a6c6b75fd091269e14a1 (patch) | |
tree | 8dcf6fcd98309a48ebbd9e46cc8c0d23a57c0965 /core/fpdfdoc | |
parent | 240fe6d79f234896a966ddce0b9a125776dc9171 (diff) | |
download | pdfium-85f019a8e7d33cbba368a6c6b75fd091269e14a1.tar.xz |
Add pdfium::clamp() as a placeholder for std::clamp().chromium/3046
Ue it to fix a typo as well.
BUG=pdfium:634
Change-Id: I2d686242ffb841aedc2fae6a3cf7a00bea667404
Reviewed-on: https://pdfium-review.googlesource.com/3113
Commit-Queue: Lei Zhang <thestig@chromium.org>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Diffstat (limited to 'core/fpdfdoc')
-rw-r--r-- | core/fpdfdoc/cpdf_variabletext.cpp | 4 | ||||
-rw-r--r-- | core/fpdfdoc/csection.cpp | 13 |
2 files changed, 7 insertions, 10 deletions
diff --git a/core/fpdfdoc/cpdf_variabletext.cpp b/core/fpdfdoc/cpdf_variabletext.cpp index d5333192f5..dcd3a0785a 100644 --- a/core/fpdfdoc/cpdf_variabletext.cpp +++ b/core/fpdfdoc/cpdf_variabletext.cpp @@ -699,7 +699,7 @@ CPVT_WordPlace CPDF_VariableText::AddSection(const CPVT_WordPlace& place, return place; int32_t nSecIndex = - std::max(std::min(place.nSecIndex, m_SectionArray.GetSize()), 0); + pdfium::clamp(place.nSecIndex, 0, m_SectionArray.GetSize()); CSection* pSection = new CSection(this); pSection->m_SecInfo = secinfo; pSection->SecPlace.nSecIndex = nSecIndex; @@ -727,7 +727,7 @@ CPVT_WordPlace CPDF_VariableText::AddWord(const CPVT_WordPlace& place, } CPVT_WordPlace newplace = place; newplace.nSecIndex = - std::max(std::min(newplace.nSecIndex, m_SectionArray.GetSize() - 1), 0); + pdfium::clamp(newplace.nSecIndex, 0, m_SectionArray.GetSize() - 1); if (CSection* pSection = m_SectionArray.GetAt(newplace.nSecIndex)) return pSection->AddWord(newplace, wordinfo); return place; diff --git a/core/fpdfdoc/csection.cpp b/core/fpdfdoc/csection.cpp index 981f6d0b54..0c7825585c 100644 --- a/core/fpdfdoc/csection.cpp +++ b/core/fpdfdoc/csection.cpp @@ -29,9 +29,8 @@ void CSection::ResetLineArray() { } void CSection::ResetWordArray() { - for (int32_t i = 0, sz = m_WordArray.GetSize(); i < sz; i++) { + for (int32_t i = 0, sz = m_WordArray.GetSize(); i < sz; i++) delete m_WordArray.GetAt(i); - } m_WordArray.RemoveAll(); } @@ -47,12 +46,11 @@ CPVT_WordPlace CSection::AddWord(const CPVT_WordPlace& place, const CPVT_WordInfo& wordinfo) { CPVT_WordInfo* pWord = new CPVT_WordInfo(wordinfo); int32_t nWordIndex = - std::max(std::min(place.nWordIndex, m_WordArray.GetSize()), 0); - if (nWordIndex == m_WordArray.GetSize()) { + pdfium::clamp(place.nWordIndex, 0, m_WordArray.GetSize()); + if (nWordIndex == m_WordArray.GetSize()) m_WordArray.Add(pWord); - } else { + else m_WordArray.InsertAt(nWordIndex, pWord); - } return place; } @@ -62,9 +60,8 @@ CPVT_WordPlace CSection::AddLine(const CPVT_LineInfo& lineinfo) { } CPVT_FloatRect CSection::Rearrange() { - if (m_pVT->m_nCharArray > 0) { + if (m_pVT->m_nCharArray > 0) return CTypeset(this).CharArray(); - } return CTypeset(this).Typeset(); } |