1*3ac0a46fSAndroid Build Coastguard Workerdiff --git a/third_party/agg23/agg_rasterizer_scanline_aa.cpp b/third_party/agg23/agg_rasterizer_scanline_aa.cpp 2*3ac0a46fSAndroid Build Coastguard Workerindex c90bdafdd..1fe9a0c32 100644 3*3ac0a46fSAndroid Build Coastguard Worker--- a/third_party/agg23/agg_rasterizer_scanline_aa.cpp 4*3ac0a46fSAndroid Build Coastguard Worker+++ b/third_party/agg23/agg_rasterizer_scanline_aa.cpp 5*3ac0a46fSAndroid Build Coastguard Worker@@ -495,4 +495,11 @@ void outline_aa::sort_cells() 6*3ac0a46fSAndroid Build Coastguard Worker } 7*3ac0a46fSAndroid Build Coastguard Worker m_sorted = true; 8*3ac0a46fSAndroid Build Coastguard Worker } 9*3ac0a46fSAndroid Build Coastguard Worker+// static 10*3ac0a46fSAndroid Build Coastguard Worker+int rasterizer_scanline_aa::calculate_area(int cover, int shift) 11*3ac0a46fSAndroid Build Coastguard Worker+{ 12*3ac0a46fSAndroid Build Coastguard Worker+ unsigned int result = cover; 13*3ac0a46fSAndroid Build Coastguard Worker+ result <<= shift; 14*3ac0a46fSAndroid Build Coastguard Worker+ return result; 15*3ac0a46fSAndroid Build Coastguard Worker+} 16*3ac0a46fSAndroid Build Coastguard Worker } 17*3ac0a46fSAndroid Build Coastguard Workerdiff --git a/third_party/agg23/agg_rasterizer_scanline_aa.h b/third_party/agg23/agg_rasterizer_scanline_aa.h 18*3ac0a46fSAndroid Build Coastguard Workerindex c747ee379..281933710 100644 19*3ac0a46fSAndroid Build Coastguard Worker--- a/third_party/agg23/agg_rasterizer_scanline_aa.h 20*3ac0a46fSAndroid Build Coastguard Worker+++ b/third_party/agg23/agg_rasterizer_scanline_aa.h 21*3ac0a46fSAndroid Build Coastguard Worker@@ -338,7 +338,6 @@ public: 22*3ac0a46fSAndroid Build Coastguard Worker const cell_aa* cur_cell = *cells; 23*3ac0a46fSAndroid Build Coastguard Worker int x = cur_cell->x; 24*3ac0a46fSAndroid Build Coastguard Worker int area = cur_cell->area; 25*3ac0a46fSAndroid Build Coastguard Worker- unsigned alpha; 26*3ac0a46fSAndroid Build Coastguard Worker cover += cur_cell->cover; 27*3ac0a46fSAndroid Build Coastguard Worker while(--num_cells) { 28*3ac0a46fSAndroid Build Coastguard Worker cur_cell = *++cells; 29*3ac0a46fSAndroid Build Coastguard Worker@@ -349,14 +348,14 @@ public: 30*3ac0a46fSAndroid Build Coastguard Worker cover += cur_cell->cover; 31*3ac0a46fSAndroid Build Coastguard Worker } 32*3ac0a46fSAndroid Build Coastguard Worker if(area) { 33*3ac0a46fSAndroid Build Coastguard Worker- alpha = calculate_alpha((cover << (poly_base_shift + 1)) - area, no_smooth); 34*3ac0a46fSAndroid Build Coastguard Worker+ unsigned alpha = calculate_alpha(calculate_area(cover, poly_base_shift + 1) - area, no_smooth); 35*3ac0a46fSAndroid Build Coastguard Worker if(alpha) { 36*3ac0a46fSAndroid Build Coastguard Worker sl.add_cell(x, alpha); 37*3ac0a46fSAndroid Build Coastguard Worker } 38*3ac0a46fSAndroid Build Coastguard Worker x++; 39*3ac0a46fSAndroid Build Coastguard Worker } 40*3ac0a46fSAndroid Build Coastguard Worker if(num_cells && cur_cell->x > x) { 41*3ac0a46fSAndroid Build Coastguard Worker- alpha = calculate_alpha(cover << (poly_base_shift + 1), no_smooth); 42*3ac0a46fSAndroid Build Coastguard Worker+ unsigned alpha = calculate_alpha(calculate_area(cover, poly_base_shift + 1), no_smooth); 43*3ac0a46fSAndroid Build Coastguard Worker if(alpha) { 44*3ac0a46fSAndroid Build Coastguard Worker sl.add_span(x, cur_cell->x - x, alpha); 45*3ac0a46fSAndroid Build Coastguard Worker } 46*3ac0a46fSAndroid Build Coastguard Worker@@ -459,6 +458,8 @@ private: 47*3ac0a46fSAndroid Build Coastguard Worker m_prev_y = y; 48*3ac0a46fSAndroid Build Coastguard Worker } 49*3ac0a46fSAndroid Build Coastguard Worker private: 50*3ac0a46fSAndroid Build Coastguard Worker+ static int calculate_area(int cover, int shift); 51*3ac0a46fSAndroid Build Coastguard Worker+ 52*3ac0a46fSAndroid Build Coastguard Worker outline_aa m_outline; 53*3ac0a46fSAndroid Build Coastguard Worker filling_rule_e m_filling_rule; 54*3ac0a46fSAndroid Build Coastguard Worker int m_clipped_start_x; 55