summaryrefslogtreecommitdiff
path: root/core/fpdfdoc
diff options
context:
space:
mode:
authorJane Liu <janeliulwq@google.com>2017-08-22 10:50:06 -0400
committerChromium commit bot <commit-bot@chromium.org>2017-08-22 16:42:55 +0000
commit878b27de2fa8e5bdc3b910c98846f4b43185d4aa (patch)
treef21a9528354ebf533a637f5ea0e8edaa44be7427 /core/fpdfdoc
parentaac59a0e59052366e260396165a759b5b0e80188 (diff)
downloadpdfium-878b27de2fa8e5bdc3b910c98846f4b43185d4aa.tar.xz
Converted CFX_Matrix::TransformRect() to take in consts
Currently, all three of CFX_Matrix::TransformRect() take in rect values and modify them in place. This CL converts them to take in constant values and return the transformed values instead, and fixes all the call sites. Bug=pdfium:874 Change-Id: I9c274df3b14e9d88c100ba0530068e06e8fec32b Reviewed-on: https://pdfium-review.googlesource.com/11550 Reviewed-by: dsinclair <dsinclair@chromium.org> Commit-Queue: Jane Liu <janeliulwq@google.com>
Diffstat (limited to 'core/fpdfdoc')
-rw-r--r--core/fpdfdoc/cpdf_annot.cpp4
-rw-r--r--core/fpdfdoc/cpdf_annotlist.cpp7
-rw-r--r--core/fpdfdoc/cpdf_formcontrol.cpp4
3 files changed, 7 insertions, 8 deletions
diff --git a/core/fpdfdoc/cpdf_annot.cpp b/core/fpdfdoc/cpdf_annot.cpp
index e43a7353b6..f2b54e81fe 100644
--- a/core/fpdfdoc/cpdf_annot.cpp
+++ b/core/fpdfdoc/cpdf_annot.cpp
@@ -52,9 +52,9 @@ CPDF_Form* AnnotGetMatrix(const CPDF_Page* pPage,
if (!pForm)
return nullptr;
- CFX_FloatRect form_bbox = pForm->m_pFormDict->GetRectFor("BBox");
CFX_Matrix form_matrix = pForm->m_pFormDict->GetMatrixFor("Matrix");
- form_matrix.TransformRect(form_bbox);
+ CFX_FloatRect form_bbox =
+ form_matrix.TransformRect(pForm->m_pFormDict->GetRectFor("BBox"));
matrix->MatchRect(pAnnot->GetRect(), form_bbox);
matrix->Concat(*pUser2Device);
return pForm;
diff --git a/core/fpdfdoc/cpdf_annotlist.cpp b/core/fpdfdoc/cpdf_annotlist.cpp
index e4ecf466f5..9f6f79a02c 100644
--- a/core/fpdfdoc/cpdf_annotlist.cpp
+++ b/core/fpdfdoc/cpdf_annotlist.cpp
@@ -148,12 +148,11 @@ void CPDF_AnnotList::DisplayPass(CPDF_Page* pPage,
continue;
}
}
- CFX_FloatRect annot_rect_f = pAnnot->GetRect();
+
CFX_Matrix matrix = *pMatrix;
if (clip_rect) {
- matrix.TransformRect(annot_rect_f);
-
- FX_RECT annot_rect = annot_rect_f.GetOuterRect();
+ FX_RECT annot_rect =
+ matrix.TransformRect(pAnnot->GetRect()).GetOuterRect();
annot_rect.Intersect(*clip_rect);
if (annot_rect.IsEmpty())
continue;
diff --git a/core/fpdfdoc/cpdf_formcontrol.cpp b/core/fpdfdoc/cpdf_formcontrol.cpp
index 54524a64e2..322abc0eb1 100644
--- a/core/fpdfdoc/cpdf_formcontrol.cpp
+++ b/core/fpdfdoc/cpdf_formcontrol.cpp
@@ -173,9 +173,9 @@ void CPDF_FormControl::DrawControl(CFX_RenderDevice* pDevice,
if (!pStream)
return;
- CFX_FloatRect form_bbox = pStream->GetDict()->GetRectFor("BBox");
CFX_Matrix form_matrix = pStream->GetDict()->GetMatrixFor("Matrix");
- form_matrix.TransformRect(form_bbox);
+ CFX_FloatRect form_bbox =
+ form_matrix.TransformRect(pStream->GetDict()->GetRectFor("BBox"));
CFX_FloatRect arect = m_pWidgetDict->GetRectFor("Rect");
CFX_Matrix matrix;
matrix.MatchRect(arect, form_bbox);