summaryrefslogtreecommitdiff
path: root/core/fxge
diff options
context:
space:
mode:
authorDan Sinclair <dsinclair@chromium.org>2017-02-14 11:55:21 -0500
committerChromium commit bot <commit-bot@chromium.org>2017-02-14 18:13:11 +0000
commit940f559b985d4a742c21b21cb077a232e44dd289 (patch)
treeceae19d15f2e97b332dd4ef7eb0dcc458d0281d9 /core/fxge
parentf528eee136a602643a7777d87a2cce52cf83f38a (diff)
downloadpdfium-940f559b985d4a742c21b21cb077a232e44dd289.tar.xz
Reland Cleanup CPDF_MeshStream
This CL fixes up the bits of the CPDF_MeshStream CL that depended on the Origin CL and integrates the fixes for the Skia bots. Change-Id: I470e49c35b809f00fecbaeb303de15c0db3fe590 Reviewed-on: https://pdfium-review.googlesource.com/2698 Reviewed-by: Nicolás Peña <npm@chromium.org> Commit-Queue: dsinclair <dsinclair@chromium.org>
Diffstat (limited to 'core/fxge')
-rw-r--r--core/fxge/skia/fx_skia_device.cpp15
-rw-r--r--core/fxge/skia/fx_skia_device_unittest.cpp7
2 files changed, 16 insertions, 6 deletions
diff --git a/core/fxge/skia/fx_skia_device.cpp b/core/fxge/skia/fx_skia_device.cpp
index 40bd321f56..c8b16f5506 100644
--- a/core/fxge/skia/fx_skia_device.cpp
+++ b/core/fxge/skia/fx_skia_device.cpp
@@ -1749,7 +1749,7 @@ bool CFX_SkiaDeviceDriver::DrawShading(const CPDF_ShadingPattern* pPattern,
m_pCanvas->clipPath(skClip, SkClipOp::kIntersect, true);
m_pCanvas->concat(skMatrix);
while (!stream.BitStream()->IsEOF()) {
- uint32_t flag = stream.GetFlag();
+ uint32_t flag = stream.ReadFlag();
int iStartPoint = flag ? 4 : 0;
int iStartColor = flag ? 2 : 0;
if (flag) {
@@ -1762,11 +1762,16 @@ bool CFX_SkiaDeviceDriver::DrawShading(const CPDF_ShadingPattern* pPattern,
tempColors[1] = colors[(flag + 1) % 4];
FXSYS_memcpy(colors, tempColors, sizeof(tempColors));
}
- for (int i = iStartPoint; i < (int)SK_ARRAY_COUNT(cubics); i++)
- stream.GetCoords(cubics[i].fX, cubics[i].fY);
+ for (int i = iStartPoint; i < (int)SK_ARRAY_COUNT(cubics); i++) {
+ CFX_PointF point = stream.ReadCoords();
+ cubics[i].fX = point.x;
+ cubics[i].fY = point.y;
+ }
for (int i = iStartColor; i < (int)SK_ARRAY_COUNT(colors); i++) {
- FX_FLOAT r = 0.0f, g = 0.0f, b = 0.0f;
- stream.GetColor(r, g, b);
+ FX_FLOAT r;
+ FX_FLOAT g;
+ FX_FLOAT b;
+ std::tie(r, g, b) = stream.ReadColor();
colors[i] = SkColorSetARGBInline(0xFF, (U8CPU)(r * 255),
(U8CPU)(g * 255), (U8CPU)(b * 255));
}
diff --git a/core/fxge/skia/fx_skia_device_unittest.cpp b/core/fxge/skia/fx_skia_device_unittest.cpp
index 693cf1b616..3b799e6190 100644
--- a/core/fxge/skia/fx_skia_device_unittest.cpp
+++ b/core/fxge/skia/fx_skia_device_unittest.cpp
@@ -35,7 +35,12 @@ void EmptyTest(CFX_SkiaDeviceDriver* driver, const State&) {
}
void CommonTest(CFX_SkiaDeviceDriver* driver, const State& state) {
- FXTEXT_CHARPOS charPos[] = {{{0, 0, 0, 0}, 0, 1, 1, 4, false, false}};
+ FXTEXT_CHARPOS charPos[1];
+ charPos[0].m_OriginX = 0;
+ charPos[0].m_OriginY = 1;
+ charPos[0].m_GlyphIndex = 1;
+ charPos[0].m_FontCharWidth = 4;
+
CFX_Font font;
FX_FLOAT fontSize = 1;
CFX_PathData clipPath, clipPath2;