From fed6e124109f089a38e24e37b104d983231bee78 Mon Sep 17 00:00:00 2001 From: Tom Sepez Date: Mon, 24 Sep 2018 17:55:00 +0000 Subject: Give CFX_GraphStateData a work-over. Use std::vector for dash array. Use compiler-generated default operations. Squeeze some enums. Fix obvious logic botch in DashChanged(). Change-Id: If1d809cc46a3cf2db98a09a3f5a49d22138c0640 Reviewed-on: https://pdfium-review.googlesource.com/42613 Reviewed-by: Lei Zhang Commit-Queue: Tom Sepez --- core/fxge/agg/fx_agg_driver.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'core/fxge/agg/fx_agg_driver.cpp') diff --git a/core/fxge/agg/fx_agg_driver.cpp b/core/fxge/agg/fx_agg_driver.cpp index 063f36d600..69006b6083 100644 --- a/core/fxge/agg/fx_agg_driver.cpp +++ b/core/fxge/agg/fx_agg_driver.cpp @@ -285,14 +285,14 @@ void RasterizeStroke(agg::rasterizer_scanline_aa* rasterizer, 1.0f / ((pObject2Device->GetXUnit() + pObject2Device->GetYUnit()) / 2); } width = std::max(width, unit); - if (pGraphState->m_DashArray) { + if (!pGraphState->m_DashArray.empty()) { typedef agg::conv_dash dash_converter; dash_converter dash(*path_data); - for (int i = 0; i < (pGraphState->m_DashCount + 1) / 2; i++) { + for (size_t i = 0; i < (pGraphState->m_DashArray.size() + 1) / 2; i++) { float on = pGraphState->m_DashArray[i * 2]; if (on <= 0.000001f) on = 1.0f / 10; - float off = i * 2 + 1 == pGraphState->m_DashCount + float off = i * 2 + 1 == pGraphState->m_DashArray.size() ? on : pGraphState->m_DashArray[i * 2 + 1]; off = std::max(off, 0.0f); -- cgit v1.2.3