diff options
author | Jane Liu <janeliulwq@google.com> | 2017-08-22 10:50:06 -0400 |
---|---|---|
committer | Chromium commit bot <commit-bot@chromium.org> | 2017-08-22 16:42:55 +0000 |
commit | 878b27de2fa8e5bdc3b910c98846f4b43185d4aa (patch) | |
tree | f21a9528354ebf533a637f5ea0e8edaa44be7427 /core/fxge | |
parent | aac59a0e59052366e260396165a759b5b0e80188 (diff) | |
download | pdfium-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.cpp | 2 | ||||
-rw-r--r-- | core/fxge/dib/cfx_imagetransformer.cpp | 5 | ||||
-rw-r--r-- | core/fxge/win32/cfx_psrenderer.cpp | 5 | ||||
-rw-r--r-- | core/fxge/win32/fx_win32_device.cpp | 2 |
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) { |