summaryrefslogtreecommitdiff
path: root/core/fxge
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/fxge
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/fxge')
-rw-r--r--core/fxge/cfx_renderdevice.cpp2
-rw-r--r--core/fxge/dib/cfx_imagetransformer.cpp5
-rw-r--r--core/fxge/win32/cfx_psrenderer.cpp5
-rw-r--r--core/fxge/win32/fx_win32_device.cpp2
4 files changed, 6 insertions, 8 deletions
diff --git a/core/fxge/cfx_renderdevice.cpp b/core/fxge/cfx_renderdevice.cpp
index 8f35dce2da..e088bc4f9a 100644
--- a/core/fxge/cfx_renderdevice.cpp
+++ b/core/fxge/cfx_renderdevice.cpp
@@ -622,7 +622,7 @@ bool CFX_RenderDevice::DrawFillStrokePath(const CFX_PathData* pPathData,
bbox = pPathData->GetBoundingBox();
}
if (pObject2Device)
- pObject2Device->TransformRect(bbox);
+ bbox = pObject2Device->TransformRect(bbox);
CFX_Matrix ctm = GetCTM();
float fScaleX = fabs(ctm.a);
diff --git a/core/fxge/dib/cfx_imagetransformer.cpp b/core/fxge/dib/cfx_imagetransformer.cpp
index 7a097ced12..c05dd795b5 100644
--- a/core/fxge/dib/cfx_imagetransformer.cpp
+++ b/core/fxge/dib/cfx_imagetransformer.cpp
@@ -233,9 +233,8 @@ CFX_ImageTransformer::CFX_ImageTransformer(
m_pMatrix->e, m_pMatrix->f));
m_dest2stretch = stretch2dest.GetInverse();
- CFX_FloatRect clip_rect_f(result_clip);
- m_dest2stretch.TransformRect(clip_rect_f);
- m_StretchClip = clip_rect_f.GetOuterRect();
+ m_StretchClip =
+ m_dest2stretch.TransformRect(CFX_FloatRect(result_clip)).GetOuterRect();
m_StretchClip.Intersect(0, 0, stretch_width, stretch_height);
m_Stretcher = pdfium::MakeUnique<CFX_ImageStretcher>(
&m_Storer, m_pSrc, stretch_width, stretch_height, m_StretchClip, m_Flags);
diff --git a/core/fxge/win32/cfx_psrenderer.cpp b/core/fxge/win32/cfx_psrenderer.cpp
index 72ee731d56..c02058d1dd 100644
--- a/core/fxge/win32/cfx_psrenderer.cpp
+++ b/core/fxge/win32/cfx_psrenderer.cpp
@@ -213,7 +213,7 @@ void CFX_PSRenderer::SetClip_PathFill(const CFX_PathData* pPathData,
OutputPath(pPathData, pObject2Device);
CFX_FloatRect rect = pPathData->GetBoundingBox();
if (pObject2Device)
- pObject2Device->TransformRect(rect);
+ rect = pObject2Device->TransformRect(rect);
m_ClipBox.left = static_cast<int>(rect.left);
m_ClipBox.right = static_cast<int>(rect.left + rect.right);
@@ -242,8 +242,7 @@ void CFX_PSRenderer::SetClip_PathStroke(const CFX_PathData* pPathData,
OutputPath(pPathData, nullptr);
CFX_FloatRect rect = pPathData->GetBoundingBox(pGraphState->m_LineWidth,
pGraphState->m_MiterLimit);
- pObject2Device->TransformRect(rect);
- m_ClipBox.Intersect(rect.GetOuterRect());
+ m_ClipBox.Intersect(pObject2Device->TransformRect(rect).GetOuterRect());
m_pStream->WriteString("strokepath W n");
if (pObject2Device)
diff --git a/core/fxge/win32/fx_win32_device.cpp b/core/fxge/win32/fx_win32_device.cpp
index 5f778f8965..fd1944a1b4 100644
--- a/core/fxge/win32/fx_win32_device.cpp
+++ b/core/fxge/win32/fx_win32_device.cpp
@@ -994,7 +994,7 @@ bool CGdiDeviceDriver::DrawPath(const CFX_PathData* pPathData,
!pPlatform->m_GdiplusExt.IsAvailable()) {
CFX_FloatRect bbox_f = pPathData->GetBoundingBox();
if (pMatrix)
- pMatrix->TransformRect(bbox_f);
+ bbox_f = pMatrix->TransformRect(bbox_f);
FX_RECT bbox = bbox_f.GetInnerRect();
if (bbox.Width() <= 0) {