diff options
41 files changed, 138 insertions, 117 deletions
diff --git a/gpu/include/GrSamplerState.h b/gpu/include/GrSamplerState.h index f47749577c..373ea94cb3 100644 --- a/gpu/include/GrSamplerState.h +++ b/gpu/include/GrSamplerState.h @@ -131,7 +131,7 @@ public: SampleMode getSampleMode() const { return fSampleMode; } const GrMatrix& getMatrix() const { return fMatrix; } const GrRect& getTextureDomain() const { return fTextureDomain; } - const bool hasTextureDomain() const {return SkIntToScalar(0) != fTextureDomain.right();} + bool hasTextureDomain() const {return SkIntToScalar(0) != fTextureDomain.right();} Filter getFilter() const { return fFilter; } bool isGradient() const { diff --git a/gpu/src/GrGpuGLFixed.h b/gpu/src/GrGpuGLFixed.h index 077b6e2a38..487c09f087 100644 --- a/gpu/src/GrGpuGLFixed.h +++ b/gpu/src/GrGpuGLFixed.h @@ -41,7 +41,7 @@ private: const GrMatrix& getHWSamplerMatrix(int stage) const { return fHWDrawState.fSamplerStates[stage].getMatrix(); } - const void recordHWSamplerMatrix(int stage, const GrMatrix& matrix) { + void recordHWSamplerMatrix(int stage, const GrMatrix& matrix) { fHWDrawState.fSamplerStates[stage].setMatrix(matrix); } diff --git a/gpu/src/GrStencil.cpp b/gpu/src/GrStencil.cpp index a537e169fd..edf83fe94c 100644 --- a/gpu/src/GrStencil.cpp +++ b/gpu/src/GrStencil.cpp @@ -16,7 +16,14 @@ #include "GrStencil.h" -const GrStencilSettings GrStencilSettings::gDisabled = {}; +const GrStencilSettings GrStencilSettings::gDisabled = { + kKeep_StencilOp, kKeep_StencilOp, + kKeep_StencilOp, kKeep_StencilOp, + kAlways_StencilFunc, kAlways_StencilFunc, + 0x0, 0x0, + 0x0, 0x0, + 0x0, 0x0 +}; GR_STATIC_ASSERT(0 == kKeep_StencilOp); GR_STATIC_ASSERT(0 == kAlways_StencilFunc); diff --git a/gpu/src/GrTesselatedPathRenderer.cpp b/gpu/src/GrTesselatedPathRenderer.cpp index 8a33012872..51d6db8e10 100644 --- a/gpu/src/GrTesselatedPathRenderer.cpp +++ b/gpu/src/GrTesselatedPathRenderer.cpp @@ -116,7 +116,7 @@ static size_t computeEdgesAndOffsetVertices(const GrMatrix& matrix, p = q; } GrDrawTarget::Edge prev_edge = *edges->back(); - for (size_t i = 0; i < edges->count(); ++i) { + for (int i = 0; i < edges->count(); ++i) { GrDrawTarget::Edge edge = edges->at(i); vertices[i] = prev_edge.intersect(edge); inverse.mapPoints(&vertices[i], 1); @@ -131,7 +131,6 @@ void GrTesselatedPathRenderer::drawPath(GrDrawTarget* target, GrPathFill fill, const GrPoint* translate) { GrDrawTarget::AutoStateRestore asr(target); - bool colorWritesWereDisabled = target->isColorWriteDisabled(); // face culling doesn't make sense here GrAssert(GrDrawTarget::kBoth_DrawFace == target->getDrawFace()); @@ -255,7 +254,7 @@ FINISHED: target->getViewInverse(&inverse); count = computeEdgesAndOffsetVertices(matrix, inverse, base, count, &edges); - int maxEdges = target->getMaxEdges(); + size_t maxEdges = target->getMaxEdges(); if (count <= maxEdges) { // All edges fit; upload all edges and draw all verts as a fan target->setVertexSourceToArray(layout, base, count); @@ -308,7 +307,7 @@ FINISHED: for (int sp = 0; sp < subpathCnt; ++sp) { internal_gluTessBeginContour(tess); int start = i; - int end = start + subpathVertCount[sp]; + size_t end = start + subpathVertCount[sp]; for (; i < end; ++i) { double* inVertex = &inVertices[i * 3]; *vertices.append() = GrPoint::Make(inVertex[0], inVertex[1]); diff --git a/gpu/src/gr_unittests.cpp b/gpu/src/gr_unittests.cpp index 7981bb15b4..df11878a98 100644 --- a/gpu/src/gr_unittests.cpp +++ b/gpu/src/gr_unittests.cpp @@ -68,7 +68,7 @@ static void test_bsearch() { for (size_t n = 0; n < GR_ARRAY_COUNT(array); n++) { for (size_t i = 0; i < n; i++) { int index = GrTBSearch<int, int>(array, n, array[i]); - GrAssert(index == i); + GrAssert(index == (int) i); index = GrTBSearch<int, int>(array, n, -array[i]); GrAssert(index < 0); } diff --git a/gyp/common.gypi b/gyp/common.gypi index aadaffb543..78482a05ed 100644 --- a/gyp/common.gypi +++ b/gyp/common.gypi @@ -65,6 +65,7 @@ 'cflags': ['-O2'] }, }, + 'cflags': [ '-Wall', '-Wextra', '-Wno-unused' ] }, }, ], diff --git a/samplecode/ClockFaceView.cpp b/samplecode/ClockFaceView.cpp index 6d4ef97f9e..c829b69b60 100644 --- a/samplecode/ClockFaceView.cpp +++ b/samplecode/ClockFaceView.cpp @@ -17,7 +17,7 @@ static inline SkPMColor rgb2gray(SkPMColor c) unsigned g = SkGetPackedG32(c); unsigned b = SkGetPackedB32(c); - unsigned x = r * 5 + g * 7 + b * 4 >> 4; + unsigned x = (r * 5 + g * 7 + b * 4) >> 4; return SkPackARGB32(0, x, x, x) | (c & (SK_A32_MASK << SK_A32_SHIFT)); } diff --git a/samplecode/SampleAARects.cpp b/samplecode/SampleAARects.cpp index b42c1e9e14..34a33b0748 100644 --- a/samplecode/SampleAARects.cpp +++ b/samplecode/SampleAARects.cpp @@ -70,7 +70,7 @@ protected: SkScalar dx = SkIntToScalar(80); SkScalar dy = SkIntToScalar(100); SkMatrix matrix; - for (int p = 0; p < SK_ARRAY_COUNT(paints); ++p) { + for (size_t p = 0; p < SK_ARRAY_COUNT(paints); ++p) { for (int stroke = 0; stroke < 2; ++stroke) { paints[p].setStyle(stroke ? SkPaint::kStroke_Style : SkPaint::kFill_Style); for (int a = 0; a < 3; ++ a) { diff --git a/samplecode/SampleAll.cpp b/samplecode/SampleAll.cpp index 75d1a317ca..abbf8f991d 100644 --- a/samplecode/SampleAll.cpp +++ b/samplecode/SampleAll.cpp @@ -408,7 +408,7 @@ protected: pos2[index].set(SkIntToScalar(index * 10), SkIntToScalar(20)); // shaders - SkPoint linearPoints[] = { 0, 0, SkIntToScalar(40), SkIntToScalar(40) }; + SkPoint linearPoints[] = { { 0, 0, }, { SkIntToScalar(40), SkIntToScalar(40) } }; SkColor linearColors[] = { SK_ColorRED, SK_ColorBLUE }; SkScalar* linearPos = NULL; int linearCount = 2; @@ -624,7 +624,7 @@ SkCornerPathEffect.h:28:class SkCornerPathEffect : public SkPathEffect { } SkShader* shaderTest() { - SkPoint pts[] = {0, 0, SkIntToScalar(100), 0 }; + SkPoint pts[] = { { 0, 0, }, { SkIntToScalar(100), 0 } }; SkColor colors[] = { SK_ColorRED, SK_ColorBLUE }; SkShader* shaderA = SkGradientShader::CreateLinear(pts, colors, NULL, 2, SkShader::kClamp_TileMode); @@ -647,7 +647,7 @@ SkCornerPathEffect.h:28:class SkCornerPathEffect : public SkPathEffect { } void drawRaster(SkCanvas* canvas) { - for (int index = 0; index < SK_ARRAY_COUNT(gRastProcs); index++) + for (size_t index = 0; index < SK_ARRAY_COUNT(gRastProcs); index++) drawOneRaster(canvas); } @@ -665,7 +665,7 @@ SkCornerPathEffect.h:28:class SkCornerPathEffect : public SkPathEffect { SkString str("GOOGLE"); - for (int i = 0; i < SK_ARRAY_COUNT(gRastProcs); i++) { + for (size_t i = 0; i < SK_ARRAY_COUNT(gRastProcs); i++) { apply_shader(&paint, i); // paint.setMaskFilter(NULL); diff --git a/samplecode/SampleArc.cpp b/samplecode/SampleArc.cpp index 504d8d812d..8e3ad88cb4 100644 --- a/samplecode/SampleArc.cpp +++ b/samplecode/SampleArc.cpp @@ -97,7 +97,7 @@ protected: 225, 90 }; - for (int i = 0; i < SK_ARRAY_COUNT(gAngles); i += 2) { + for (size_t i = 0; i < SK_ARRAY_COUNT(gAngles); i += 2) { paint.setColor(SK_ColorBLACK); drawRectWithLines(canvas, r, paint); diff --git a/samplecode/SampleAvoid.cpp b/samplecode/SampleAvoid.cpp index 95363505cb..868a67c62f 100644 --- a/samplecode/SampleAvoid.cpp +++ b/samplecode/SampleAvoid.cpp @@ -23,7 +23,7 @@ public: SK_ARRAY_COUNT(colors), SkShader::kMirror_TileMode); #else - SkPoint pts[] = { SkIntToScalar(W)/2, SkIntToScalar(H)/2 }; + SkPoint pts[] = { { SkIntToScalar(W)/2, SkIntToScalar(H)/2 } }; fShader = SkGradientShader::CreateRadial(pts[0], SkIntToScalar(H)/5, colors, NULL, SK_ARRAY_COUNT(colors), diff --git a/samplecode/SampleBitmapRect.cpp b/samplecode/SampleBitmapRect.cpp index 2d56db9f00..002b2b9b17 100644 --- a/samplecode/SampleBitmapRect.cpp +++ b/samplecode/SampleBitmapRect.cpp @@ -25,7 +25,7 @@ static SkBitmap make_bitmap() { canvas.drawColor(SK_ColorRED); SkPaint paint; paint.setAntiAlias(true); - const SkPoint pts[] = { 0, 0, 64, 64 }; + const SkPoint pts[] = { { 0, 0 }, { 64, 64 } }; const SkColor colors[] = { SK_ColorWHITE, SK_ColorBLUE }; paint.setShader(SkGradientShader::CreateLinear(pts, colors, NULL, 2, SkShader::kClamp_TileMode))->unref(); diff --git a/samplecode/SampleComplexClip.cpp b/samplecode/SampleComplexClip.cpp index 8ee078b2fa..672d0555c5 100644 --- a/samplecode/SampleComplexClip.cpp +++ b/samplecode/SampleComplexClip.cpp @@ -88,7 +88,7 @@ protected: canvas->save(); for (int invA = 0; invA < 2; ++invA) { - for (int op = 0; op < SK_ARRAY_COUNT(gOps); ++op) { + for (size_t op = 0; op < SK_ARRAY_COUNT(gOps); ++op) { int idx = invA * SK_ARRAY_COUNT(gOps) + op; if (!(idx % 3)) { canvas->restore(); diff --git a/samplecode/SampleDitherBitmap.cpp b/samplecode/SampleDitherBitmap.cpp index 91199c2ec9..0d62446dec 100644 --- a/samplecode/SampleDitherBitmap.cpp +++ b/samplecode/SampleDitherBitmap.cpp @@ -16,7 +16,7 @@ static void draw_rect(SkCanvas* canvas, const SkRect& r, const SkPaint& p) { static void draw_gradient(SkCanvas* canvas) { SkRect r = { 0, 0, SkIntToScalar(256), SkIntToScalar(32) }; - SkPoint pts[] = { r.fLeft, r.fTop, r.fRight, r.fTop }; + SkPoint pts[] = { { r.fLeft, r.fTop }, { r.fRight, r.fTop } }; SkColor colors[] = { 0xFF000000, 0xFFFF0000 }; SkShader* s = SkGradientShader::CreateLinear(pts, colors, NULL, 2, SkShader::kClamp_TileMode); diff --git a/samplecode/SampleDrawLooper.cpp b/samplecode/SampleDrawLooper.cpp index abe2c70b93..30879f75fe 100644 --- a/samplecode/SampleDrawLooper.cpp +++ b/samplecode/SampleDrawLooper.cpp @@ -35,7 +35,7 @@ public: info.fPaintBits = SkLayerDrawLooper::kStyle_Bit | SkLayerDrawLooper::kMaskFilter_Bit; info.fColorMode = SkXfermode::kSrc_Mode; - for (int i = 0; i < SK_ARRAY_COUNT(gParams); i++) { + for (size_t i = 0; i < SK_ARRAY_COUNT(gParams); i++) { info.fOffset.set(gParams[i].fOffset, gParams[i].fOffset); SkPaint* paint = fLooper->addLayer(info); paint->setAntiAlias(true); diff --git a/samplecode/SampleEffects.cpp b/samplecode/SampleEffects.cpp index 158a89f5d9..a63c08d3f5 100644 --- a/samplecode/SampleEffects.cpp +++ b/samplecode/SampleEffects.cpp @@ -44,7 +44,7 @@ static void paint_proc2(SkPaint* paint) { static void paint_proc3(SkPaint* paint) { SkColor colors[] = { SK_ColorRED, COLOR, SK_ColorBLUE }; - SkPoint pts[] = { 3, 0, 7, 5 }; + SkPoint pts[] = { { 3, 0 }, { 7, 5 } }; paint->setShader(SkGradientShader::CreateLinear(pts, colors, NULL, SK_ARRAY_COUNT(colors), SkShader::kMirror_TileMode))->unref(); } diff --git a/samplecode/SampleLayers.cpp b/samplecode/SampleLayers.cpp index f1e8dd8973..6fc9c83492 100644 --- a/samplecode/SampleLayers.cpp +++ b/samplecode/SampleLayers.cpp @@ -22,7 +22,7 @@ static void make_paint(SkPaint* paint) { SkColor colors[] = { 0, SK_ColorWHITE }; - SkPoint pts[] = { 0, 0, 0, SK_Scalar1*20 }; + SkPoint pts[] = { { 0, 0 }, { 0, SK_Scalar1*20 } }; SkShader* s = SkGradientShader::CreateLinear(pts, colors, NULL, 2, SkShader::kClamp_TileMode); paint->setShader(s)->unref(); diff --git a/samplecode/SampleLineClipper.cpp b/samplecode/SampleLineClipper.cpp index 2635a3056a..d0a8667f0e 100644 --- a/samplecode/SampleLineClipper.cpp +++ b/samplecode/SampleLineClipper.cpp @@ -155,7 +155,7 @@ class LineClipperView : public SkView { SkPoint fPts[4]; void randPts() { - for (int i = 0; i < SK_ARRAY_COUNT(fPts); i++) { + for (size_t i = 0; i < SK_ARRAY_COUNT(fPts); i++) { fPts[i].set(fRand.nextUScalar1() * 640, fRand.nextUScalar1() * 480); } diff --git a/samplecode/SampleMeasure.cpp b/samplecode/SampleMeasure.cpp index 70b88126db..eb7a288423 100644 --- a/samplecode/SampleMeasure.cpp +++ b/samplecode/SampleMeasure.cpp @@ -46,7 +46,7 @@ static void doMeasure(SkCanvas* canvas, const SkPaint& paint, const char text[]) SkRect bounds; SkPaint p(paint); - for (int i = 0; i < SK_ARRAY_COUNT(gSettings); i++) { + for (size_t i = 0; i < SK_ARRAY_COUNT(gSettings); i++) { p.setLinearText(gSettings[i].fLinearText); p.setDevKernText(gSettings[i].fDevKernText); SkScalar scale = gSettings[i].fScale; diff --git a/samplecode/SamplePatch.cpp b/samplecode/SamplePatch.cpp index 0bfaa5aa22..ea365c719d 100644 --- a/samplecode/SamplePatch.cpp +++ b/samplecode/SamplePatch.cpp @@ -42,7 +42,8 @@ static SkShader* make_shader0(SkIPoint* size) { } static SkShader* make_shader1(const SkIPoint& size) { - SkPoint pts[] = { 0, 0, SkIntToScalar(size.fX), SkIntToScalar(size.fY) }; + SkPoint pts[] = { { 0, 0, }, + { SkIntToScalar(size.fX), SkIntToScalar(size.fY) } }; SkColor colors[] = { SK_ColorRED, SK_ColorGREEN, SK_ColorBLUE, SK_ColorRED }; return SkGradientShader::CreateLinear(pts, colors, NULL, SK_ARRAY_COUNT(colors), SkShader::kMirror_TileMode, NULL); @@ -316,7 +317,7 @@ protected: } virtual SkView::Click* onFindClickHandler(SkScalar x, SkScalar y) { - for (int i = 0; i < SK_ARRAY_COUNT(fPts); i++) { + for (size_t i = 0; i < SK_ARRAY_COUNT(fPts); i++) { if (hittest(fPts[i], x, y)) { return new PtClick(this, i); } diff --git a/samplecode/SamplePath.cpp b/samplecode/SamplePath.cpp index 4fef377a97..cd45ed95e0 100644 --- a/samplecode/SamplePath.cpp +++ b/samplecode/SamplePath.cpp @@ -168,9 +168,9 @@ protected: SkPaint::kRound_Join }; - for (int i = 0; i < SK_ARRAY_COUNT(gJoins); i++) { + for (size_t i = 0; i < SK_ARRAY_COUNT(gJoins); i++) { canvas->save(); - for (int j = 0; j < SK_ARRAY_COUNT(fPath); j++) { + for (size_t j = 0; j < SK_ARRAY_COUNT(fPath); j++) { this->drawPath(canvas, fPath[j], gJoins[i]); canvas->translate(SkIntToScalar(200), 0); } diff --git a/samplecode/SamplePolyToPoly.cpp b/samplecode/SamplePolyToPoly.cpp index 29a47f7109..aea0cb4457 100644 --- a/samplecode/SamplePolyToPoly.cpp +++ b/samplecode/SamplePolyToPoly.cpp @@ -13,8 +13,12 @@ public: PolyToPolyView() { // tests { - SkPoint src[] = { 0, 0, SK_Scalar1, 0, 0, SK_Scalar1 }; - SkPoint dst[] = { 0, 0, 2*SK_Scalar1, 0, 0, 2*SK_Scalar1 }; + SkPoint src[] = { { 0, 0 }, + { SK_Scalar1, 0 }, + { 0, SK_Scalar1 } }; + SkPoint dst[] = { { 0, 0 }, + { 2*SK_Scalar1, 0 }, + { 0, 2*SK_Scalar1 } }; SkMatrix m1, m2; bool success; @@ -42,14 +46,14 @@ public: { const SkPoint src[] = { - SkIntToScalar(1), SkIntToScalar(0), - SkIntToScalar(4), SkIntToScalar(7), - SkIntToScalar(10), SkIntToScalar(2) + { SkIntToScalar(1), SkIntToScalar(0) }, + { SkIntToScalar(4), SkIntToScalar(7) }, + { SkIntToScalar(10), SkIntToScalar(2) } }; const SkPoint dst[] = { - SkIntToScalar(4), SkIntToScalar(2), - SkIntToScalar(45), SkIntToScalar(26), - SkIntToScalar(32), SkIntToScalar(17) + { SkIntToScalar(4), SkIntToScalar(2) }, + { SkIntToScalar(45), SkIntToScalar(26) }, + { SkIntToScalar(32), SkIntToScalar(17) } }; SkMatrix m0, m1; diff --git a/samplecode/SampleRegion.cpp b/samplecode/SampleRegion.cpp index 272c722993..822bd6fa47 100644 --- a/samplecode/SampleRegion.cpp +++ b/samplecode/SampleRegion.cpp @@ -235,7 +235,7 @@ protected: canvas->translate(0, SkIntToScalar(200)); - for (int op = 0; op < SK_ARRAY_COUNT(gOps); op++) { + for (size_t op = 0; op < SK_ARRAY_COUNT(gOps); op++) { canvas->drawText(gOps[op].fName, strlen(gOps[op].fName), SkIntToScalar(75), SkIntToScalar(50), textPaint); this->drawRgnOped(canvas, gOps[op].fOp, gOps[op].fColor); diff --git a/samplecode/SampleShaderText.cpp b/samplecode/SampleShaderText.cpp index 790137c1d7..2748b559a2 100644 --- a/samplecode/SampleShaderText.cpp +++ b/samplecode/SampleShaderText.cpp @@ -11,7 +11,7 @@ static void makebm(SkBitmap* bm, SkBitmap::Config config, int w, int h) { SkCanvas canvas(*bm); SkScalar s = SkIntToScalar(w < h ? w : h); - SkPoint pts[] = { 0, 0, s, s }; + SkPoint pts[] = { { 0, 0 }, { s, s } }; SkColor colors[] = { SK_ColorRED, SK_ColorGREEN, SK_ColorBLUE }; SkScalar pos[] = { 0, SK_Scalar1/2, SK_Scalar1 }; SkPaint paint; diff --git a/samplecode/SampleSlides.cpp b/samplecode/SampleSlides.cpp index f57cb5af49..3d2a61e5fb 100644 --- a/samplecode/SampleSlides.cpp +++ b/samplecode/SampleSlides.cpp @@ -324,7 +324,8 @@ static SkShader* make_shader0(SkIPoint* size) { } static SkShader* make_shader1(const SkIPoint& size) { - SkPoint pts[] = { 0, 0, SkIntToScalar(size.fX), SkIntToScalar(size.fY) }; + SkPoint pts[] = { { 0, 0 }, + { SkIntToScalar(size.fX), SkIntToScalar(size.fY) } }; SkColor colors[] = { SK_ColorRED, SK_ColorGREEN, SK_ColorBLUE, SK_ColorRED }; return SkGradientShader::CreateLinear(pts, colors, NULL, SK_ARRAY_COUNT(colors), SkShader::kMirror_TileMode, NULL); @@ -439,7 +440,7 @@ static void mesh_slide(SkCanvas* canvas) { paint.setDither(true); paint.setFilterBitmap(true); - for (int i = 0; i < SK_ARRAY_COUNT(fRecs); i++) { + for (size_t i = 0; i < SK_ARRAY_COUNT(fRecs); i++) { canvas->save(); paint.setShader(NULL); @@ -725,7 +726,7 @@ static void texteffect_slide(SkCanvas* canvas) { paint.setTextSize(75); paint.setAntiAlias(true); paint.setColor(SK_ColorBLUE); - for (int i = 0; i < SK_ARRAY_COUNT(gRastProcs); i++) { + for (size_t i = 0; i < SK_ARRAY_COUNT(gRastProcs); i++) { apply_shader(&paint, i); canvas->drawText(str, len, x, y, paint); y += 80; diff --git a/samplecode/SampleText.cpp b/samplecode/SampleText.cpp index a2d6dd2c06..267653006c 100644 --- a/samplecode/SampleText.cpp +++ b/samplecode/SampleText.cpp @@ -112,7 +112,7 @@ static void test_breakText() { mm = m; } - SkDEBUGCODE(int length2 =) paint.breakText(text, length, width, &mm); + SkDEBUGCODE(size_t length2 =) paint.breakText(text, length, width, &mm); SkASSERT(length2 == length); SkASSERT(mm == width); } diff --git a/samplecode/SampleTextEffects.cpp b/samplecode/SampleTextEffects.cpp index 733dd31c24..f256b2ef18 100644 --- a/samplecode/SampleTextEffects.cpp +++ b/samplecode/SampleTextEffects.cpp @@ -354,7 +354,7 @@ protected: paint.setTypeface(fFace); - for (int i = 0; i < SK_ARRAY_COUNT(gRastProcs); i++) { + for (size_t i = 0; i < SK_ARRAY_COUNT(gRastProcs); i++) { apply_shader(&paint, i); // paint.setMaskFilter(NULL); diff --git a/samplecode/SampleTiling.cpp b/samplecode/SampleTiling.cpp index b3c73d7f58..4752ed1eba 100644 --- a/samplecode/SampleTiling.cpp +++ b/samplecode/SampleTiling.cpp @@ -22,7 +22,7 @@ static void makebm(SkBitmap* bm, SkBitmap::Config config, int w, int h) { bm->eraseColor(0); SkCanvas canvas(*bm); - SkPoint pts[] = { 0, 0, SkIntToScalar(w), SkIntToScalar(h) }; + SkPoint pts[] = { { 0, 0 }, { SkIntToScalar(w), SkIntToScalar(h) } }; SkColor colors[] = { SK_ColorRED, SK_ColorGREEN, SK_ColorBLUE }; SkScalar pos[] = { 0, SK_Scalar1/2, SK_Scalar1 }; SkPaint paint; @@ -62,7 +62,7 @@ public: TilingView() : fLooper(SkIntToScalar(1), SkIntToScalar(2), SkIntToScalar(2), 0x88000000) { - for (int i = 0; i < SK_ARRAY_COUNT(gConfigs); i++) { + for (size_t i = 0; i < SK_ARRAY_COUNT(gConfigs); i++) { makebm(&fTexture[i], gConfigs[i], gWidth, gHeight); } } @@ -99,8 +99,8 @@ protected: } if (textCanvas) { - for (int kx = 0; kx < SK_ARRAY_COUNT(gModes); kx++) { - for (int ky = 0; ky < SK_ARRAY_COUNT(gModes); ky++) { + for (size_t kx = 0; kx < SK_ARRAY_COUNT(gModes); kx++) { + for (size_t ky = 0; ky < SK_ARRAY_COUNT(gModes); ky++) { SkPaint p; SkString str; p.setAntiAlias(true); @@ -118,11 +118,11 @@ protected: y += SkIntToScalar(16); - for (int i = 0; i < SK_ARRAY_COUNT(gConfigs); i++) { - for (int j = 0; j < SK_ARRAY_COUNT(gFilters); j++) { + for (size_t i = 0; i < SK_ARRAY_COUNT(gConfigs); i++) { + for (size_t j = 0; j < SK_ARRAY_COUNT(gFilters); j++) { x = SkIntToScalar(10); - for (int kx = 0; kx < SK_ARRAY_COUNT(gModes); kx++) { - for (int ky = 0; ky < SK_ARRAY_COUNT(gModes); ky++) { + for (size_t kx = 0; kx < SK_ARRAY_COUNT(gModes); kx++) { + for (size_t ky = 0; ky < SK_ARRAY_COUNT(gModes); ky++) { SkPaint paint; setup(&paint, fTexture[i], gFilters[j], gModes[kx], gModes[ky]); paint.setDither(true); diff --git a/samplecode/SampleVertices.cpp b/samplecode/SampleVertices.cpp index 4557cc4e17..74e757f43e 100644 --- a/samplecode/SampleVertices.cpp +++ b/samplecode/SampleVertices.cpp @@ -38,7 +38,8 @@ static SkShader* make_shader0(SkIPoint* size) { } static SkShader* make_shader1(const SkIPoint& size) { - SkPoint pts[] = { 0, 0, SkIntToScalar(size.fX), SkIntToScalar(size.fY) }; + SkPoint pts[] = { { 0, 0 }, + { SkIntToScalar(size.fX), SkIntToScalar(size.fY) } }; SkColor colors[] = { SK_ColorRED, SK_ColorGREEN, SK_ColorBLUE, SK_ColorRED }; return SkGradientShader::CreateLinear(pts, colors, NULL, SK_ARRAY_COUNT(colors), SkShader::kMirror_TileMode, NULL); @@ -88,7 +89,7 @@ protected: paint.setDither(true); paint.setFilterBitmap(true); - for (int i = 0; i < SK_ARRAY_COUNT(fRecs); i++) { + for (size_t i = 0; i < SK_ARRAY_COUNT(fRecs); i++) { canvas->save(); paint.setShader(NULL); diff --git a/src/animator/SkDisplayApply.cpp b/src/animator/SkDisplayApply.cpp index b9e65f741f..8aca71f255 100644 --- a/src/animator/SkDisplayApply.cpp +++ b/src/animator/SkDisplayApply.cpp @@ -294,7 +294,7 @@ bool SkApply::enable(SkAnimateMaker& maker) { if ((mode == kMode_immediate || mode == kMode_create) && scope == NULL) return false; // !!! error? bool enableMe = scope && (scope->hasEnable() || scope->isApply() || scope->isDrawable() == false); - if (mode == kMode_immediate && enableMe || mode == kMode_create) + if ((mode == kMode_immediate && enableMe) || mode == kMode_create) activate(maker); // for non-drawables like post, prime them here if (mode == kMode_immediate && enableMe) fActive->enable(); @@ -479,7 +479,7 @@ void SkApply::endSave(int index) { } else { SkScriptValue scriptValue; bool success = target->getProperty(info->propertyIndex(), &scriptValue); - SkASSERT(success = true); + SkASSERT(success == true); last[0] = scriptValue.fOperand; scriptValue.fOperand = fActive->fSaveRestore[activeIndex][0]; target->setProperty(info->propertyIndex(), scriptValue); @@ -624,8 +624,8 @@ bool SkApply::interpolate(SkAnimateMaker& maker, SkMSec rawTime) { SkInterpolatorBase::Result interpResult = fActive->fInterpolators[inner]->timeToValues( innerTime, values.get()); result |= (interpResult != SkInterpolatorBase::kFreezeEnd_Result); - if ((transition != SkApply::kTransition_reverse && interpResult == SkInterpolatorBase::kFreezeEnd_Result || - transition == SkApply::kTransition_reverse && fLastTime == 0) && state.fUnpostedEndEvent) { + if (((transition != SkApply::kTransition_reverse && interpResult == SkInterpolatorBase::kFreezeEnd_Result) || + (transition == SkApply::kTransition_reverse && fLastTime == 0)) && state.fUnpostedEndEvent) { // SkDEBUGF(("interpolate: post on end\n")); state.fUnpostedEndEvent = false; maker.postOnEnd(animate, state.fBegin + state.fDuration); diff --git a/src/animator/SkDisplayXMLParser.cpp b/src/animator/SkDisplayXMLParser.cpp index a94b8480b0..db6c83848c 100644 --- a/src/animator/SkDisplayXMLParser.cpp +++ b/src/animator/SkDisplayXMLParser.cpp @@ -304,8 +304,8 @@ const SkMemberInfo* SkDisplayXMLParser::searchContainer(const SkMemberInfo* info } return info; next: - if (type == SkType_Drawable || type == SkType_Displayable && - container->fDisplayable->isDrawable()) { + if (type == SkType_Drawable || (type == SkType_Displayable && + container->fDisplayable->isDrawable())) { rectNext: if (fParents.count() > 1) { Parent* parent = fParents.end() - 2; diff --git a/src/animator/SkDump.cpp b/src/animator/SkDump.cpp index eac956c136..426a1e649f 100644 --- a/src/animator/SkDump.cpp +++ b/src/animator/SkDump.cpp @@ -58,7 +58,7 @@ bool SkDump::enable(SkAnimateMaker& maker ) { maker.fEvents.dump(maker); if ((hasAttr |= (name.size() > 0)) == true) maker.dump(name.c_str()); - if (displayList > 0 || displayList != 0 && hasAttr == false) + if (displayList > 0 || (displayList != 0 && hasAttr == false)) maker.fDisplayList.dump(&maker); return true; } diff --git a/src/animator/SkScript.cpp b/src/animator/SkScript.cpp index f81147d4a2..efb89a5844 100644 --- a/src/animator/SkScript.cpp +++ b/src/animator/SkScript.cpp @@ -305,8 +305,8 @@ twoChar: } while (true); signed char topPrecedence = gPrecedence[compare]; SkASSERT(topPrecedence != -1); - if (topPrecedence > precedence || topPrecedence == precedence && - gOpAttributes[op].fLeftType == kNoType) { + if (topPrecedence > precedence || (topPrecedence == precedence && + gOpAttributes[op].fLeftType == kNoType)) { break; } if (processOp() == false) diff --git a/src/animator/SkScriptDecompile.cpp b/src/animator/SkScriptDecompile.cpp index d582d335d4..98db1fb327 100644 --- a/src/animator/SkScriptDecompile.cpp +++ b/src/animator/SkScriptDecompile.cpp @@ -114,7 +114,7 @@ static size_t gOperandNamesSize = sizeof(gOperandNames) / sizeof(gOperandNames[0 // check to see that there are no missing or duplicate entries void SkScriptEngine2::ValidateDecompileTable() { SkScriptEngine2::TypeOp op = SkScriptEngine2::kNop; - int index; + size_t index; for (index = 0; index < gOpNamesSize; index++) { SkASSERT(gOpNames[index].fOp == op); op = (SkScriptEngine2::TypeOp) (op + 1); @@ -132,9 +132,9 @@ void SkScriptEngine2::decompile(const unsigned char* start, size_t length) { SkASSERT(length > 0); const unsigned char* opCode = start; do { - SkASSERT(opCode - start < length); + SkASSERT((size_t)(opCode - start) < length); SkScriptEngine2::TypeOp op = (SkScriptEngine2::TypeOp) *opCode++; - SkASSERT(op < gOpNamesSize); + SkASSERT((size_t)op < gOpNamesSize); SkDebugf("%d: %s", opCode - start - 1, gOpNames[op].fName); switch (op) { case SkScriptEngine2::kCallback: { @@ -184,7 +184,7 @@ void SkScriptEngine2::decompile(const unsigned char* start, size_t length) { SkOperand2::OpType type; memcpy(&type, opCode, sizeof(type)); opCode += sizeof(type); - int index = 0; + size_t index = 0; if (type == 0) SkDebugf(" type: %s", gOperandNames[index].fName); else { @@ -211,6 +211,8 @@ void SkScriptEngine2::decompile(const unsigned char* start, size_t length) { goto done; case SkScriptEngine2::kNop: SkASSERT(0); + default: + break; } SkDebugf("\n"); } while (true); diff --git a/src/animator/SkScriptRuntime.cpp b/src/animator/SkScriptRuntime.cpp index 6d8c208d2d..12841983bd 100644 --- a/src/animator/SkScriptRuntime.cpp +++ b/src/animator/SkScriptRuntime.cpp @@ -304,6 +304,8 @@ bool SkScriptRuntime::executeTokens(unsigned char* opCode) { goto done; case SkScriptEngine2::kNop: SkASSERT(0); + default: + break; } } while (true); done: diff --git a/src/animator/SkScriptTokenizer.cpp b/src/animator/SkScriptTokenizer.cpp index efd187291c..edcc2af441 100644 --- a/src/animator/SkScriptTokenizer.cpp +++ b/src/animator/SkScriptTokenizer.cpp @@ -8,34 +8,34 @@ #include "SkOpArray.h" const SkScriptEngine2::OperatorAttributes SkScriptEngine2::gOpAttributes[] = { -{ SkOperand2::kNoType }, +{ SkOperand2::kNoType, SkOperand2::kNoType, kNoBias, kResultIsNotBoolean }, { SkOperand2::OpType(SkOperand2::kS32 | SkOperand2::kScalar | SkOperand2::kString), - SkOperand2::OpType(SkOperand2::kS32 | SkOperand2::kScalar | SkOperand2::kString), kTowardsString }, // kAdd -{ SkOperand2::kS32, SkOperand2::kS32, kNoBias }, // kBitAnd -{ SkOperand2::kNoType, SkOperand2::kS32, kNoBias }, // kBitNot -{ SkOperand2::kS32, SkOperand2::kS32, kNoBias }, // kBitOr + SkOperand2::OpType(SkOperand2::kS32 | SkOperand2::kScalar | SkOperand2::kString), kTowardsString, kResultIsNotBoolean }, // kAdd +{ SkOperand2::kS32, SkOperand2::kS32, kNoBias, kResultIsNotBoolean }, // kBitAnd +{ SkOperand2::kNoType, SkOperand2::kS32, kNoBias, kResultIsNotBoolean }, // kBitNot +{ SkOperand2::kS32, SkOperand2::kS32, kNoBias, kResultIsNotBoolean }, // kBitOr { SkOperand2::OpType(SkOperand2::kS32 | SkOperand2::kScalar), - SkOperand2::OpType(SkOperand2::kS32 | SkOperand2::kScalar), kNoBias }, // kDivide + SkOperand2::OpType(SkOperand2::kS32 | SkOperand2::kScalar), kNoBias, kResultIsNotBoolean }, // kDivide { SkOperand2::OpType(SkOperand2::kS32 | SkOperand2::kScalar | SkOperand2::kString), SkOperand2::OpType(SkOperand2::kS32 | SkOperand2::kScalar |SkOperand2:: kString), kTowardsNumber, kResultIsBoolean }, // kEqual -{ SkOperand2::kS32 }, // kFlipOps +{ SkOperand2::kS32, SkOperand2::kNoType, kNoBias, kResultIsNotBoolean }, // kFlipOps { SkOperand2::OpType(SkOperand2::kS32 | SkOperand2::kScalar | SkOperand2::kString), SkOperand2::OpType(SkOperand2::kS32 | SkOperand2::kScalar | SkOperand2::kString), kTowardsNumber, kResultIsBoolean }, // kGreaterEqual -{ SkOperand2::kNoType, SkOperand2::kS32, kNoBias }, // kLogicalAnd (really, ToBool) -{ SkOperand2::kNoType, SkOperand2::kS32, kNoBias }, // kLogicalNot -{ SkOperand2::kS32, SkOperand2::kS32, kNoBias }, // kLogicalOr -{ SkOperand2::kNoType, SkOperand2::OpType(SkOperand2::kS32 | SkOperand2::kScalar), kNoBias }, // kMinus +{ SkOperand2::kNoType, SkOperand2::kS32, kNoBias, kResultIsNotBoolean }, // kLogicalAnd (really, ToBool) +{ SkOperand2::kNoType, SkOperand2::kS32, kNoBias, kResultIsNotBoolean }, // kLogicalNot +{ SkOperand2::kS32, SkOperand2::kS32, kNoBias, kResultIsNotBoolean }, // kLogicalOr +{ SkOperand2::kNoType, SkOperand2::OpType(SkOperand2::kS32 | SkOperand2::kScalar), kNoBias, kResultIsNotBoolean }, // kMinus { SkOperand2::OpType(SkOperand2::kS32 | SkOperand2::kScalar), - SkOperand2::OpType(SkOperand2::kS32 |SkOperand2:: kScalar), kNoBias }, // kModulo + SkOperand2::OpType(SkOperand2::kS32 |SkOperand2:: kScalar), kNoBias, kResultIsNotBoolean }, // kModulo { SkOperand2::OpType(SkOperand2::kS32 | SkOperand2::kScalar), - SkOperand2::OpType(SkOperand2::kS32 | SkOperand2::kScalar), kNoBias }, // kMultiply -{ SkOperand2::kS32, SkOperand2::kS32, kNoBias }, // kShiftLeft -{ SkOperand2::kS32, SkOperand2::kS32, kNoBias }, // kShiftRight + SkOperand2::OpType(SkOperand2::kS32 | SkOperand2::kScalar), kNoBias, kResultIsNotBoolean }, // kMultiply +{ SkOperand2::kS32, SkOperand2::kS32, kNoBias, kResultIsNotBoolean }, // kShiftLeft +{ SkOperand2::kS32, SkOperand2::kS32, kNoBias, kResultIsNotBoolean }, // kShiftRight { SkOperand2::OpType(SkOperand2::kS32 | SkOperand2::kScalar), - SkOperand2::OpType(SkOperand2::kS32 | SkOperand2::kScalar), kNoBias }, // kSubtract -{ SkOperand2::kS32, SkOperand2::kS32, kNoBias } // kXor + SkOperand2::OpType(SkOperand2::kS32 | SkOperand2::kScalar), kNoBias, kResultIsNotBoolean }, // kSubtract +{ SkOperand2::kS32, SkOperand2::kS32, kNoBias, kResultIsNotBoolean } // kXor }; #define kBracketPrecedence 16 @@ -308,8 +308,8 @@ twoChar: } while (true); signed char topPrecedence = gPrecedence[compare]; SkASSERT(topPrecedence != -1); - if (topPrecedence > precedence || topPrecedence == precedence && - gOpAttributes[op].fLeftType == SkOperand2::kNoType) { + if (topPrecedence > precedence || (topPrecedence == precedence && + gOpAttributes[op].fLeftType == SkOperand2::kNoType)) { break; } processOp(); @@ -1051,7 +1051,8 @@ bool SkScriptEngine2::processOp() { fOpStack.pop(&op); op = (Op) (op & ~kArtificialOp); const OperatorAttributes* attributes = &gOpAttributes[op]; - SkScriptValue2 value1 = { 0 }; + SkScriptValue2 value1; + memset(&value1, 0, sizeof(SkScriptValue2)); SkScriptValue2 value2; fValueStack.pop(&value2); value2.fIsWritten = SkScriptValue2::kUnwritten; @@ -1230,7 +1231,7 @@ bool SkScriptEngine2::ConvertTo(SkScriptEngine2* engine, SkOperand2::OpType toTy SkScalar SkScriptEngine2::IntToScalar(int32_t s32) { SkScalar scalar; - if (s32 == SK_NaN32) + if (s32 == (int32_t) SK_NaN32) scalar = SK_ScalarNaN; else if (SkAbs32(s32) == SK_MaxS32) scalar = SkSign32(s32) * SK_ScalarMax; @@ -1261,21 +1262,21 @@ bool SkScriptEngine2::ValueToString(const SkScriptValue2& value, SkString* strin #ifdef SK_DEBUG -#define testInt(expression) { #expression, SkOperand2::kS32, expression } +#define testInt(expression) { #expression, SkOperand2::kS32, expression, 0, NULL } #ifdef SK_SCALAR_IS_FLOAT -#define testScalar(expression) { #expression, SkOperand2::kScalar, 0, (float) expression } -#define testRemainder(exp1, exp2) { #exp1 "%" #exp2, SkOperand2::kScalar, 0, fmodf(exp1, exp2) } +#define testScalar(expression) { #expression, SkOperand2::kScalar, 0, (float) expression, NULL } +#define testRemainder(exp1, exp2) { #exp1 "%" #exp2, SkOperand2::kScalar, 0, fmodf(exp1, exp2), NULL } #else #ifdef SK_CAN_USE_FLOAT -#define testScalar(expression) { #expression, SkOperand2::kScalar, 0, (int) ((expression) * 65536.0f) } -#define testRemainder(exp1, exp2) { #exp1 "%" #exp2, SkOperand2::kScalar, 0, (int) (fmod(exp1, exp2) * 65536.0f) } +#define testScalar(expression) { #expression, SkOperand2::kScalar, 0, (int) ((expression) * 65536.0f), NULL } +#define testRemainder(exp1, exp2) { #exp1 "%" #exp2, SkOperand2::kScalar, 0, (int) (fmod(exp1, exp2) * 65536.0f), NULL } #endif #endif -#define testTrue(expression) { #expression, SkOperand2::kS32, 1 } -#define testFalse(expression) { #expression, SkOperand2::kS32, 0 } +#define testTrue(expression) { #expression, SkOperand2::kS32, 1, 0, NULL } +#define testFalse(expression) { #expression, SkOperand2::kS32, 0, 0, NULL } static const SkScriptNAnswer2 scriptTests[] = { - testInt(1||0&&3), + testInt(1||(0&&3)), #ifdef SK_CAN_USE_FLOAT testScalar(- -5.5- -1.5), testScalar(1.0+5), @@ -1307,12 +1308,12 @@ static const SkScriptNAnswer2 scriptTests[] = { { "'123'+\"456\"", SkOperand2::kString, 0, 0, "123456" }, { "123+\"456\"", SkOperand2::kString, 0, 0, "123456" }, { "'123'+456", SkOperand2::kString, 0, 0, "123456" }, - { "'123'|\"456\"", SkOperand2::kS32, 123|456 }, - { "123|\"456\"", SkOperand2::kS32, 123|456 }, - { "'123'|456", SkOperand2::kS32, 123|456 }, - { "'2'<11", SkOperand2::kS32, 1 }, - { "2<'11'", SkOperand2::kS32, 1 }, - { "'2'<'11'", SkOperand2::kS32, 0 }, + { "'123'|\"456\"", SkOperand2::kS32, 123|456, 0, NULL }, + { "123|\"456\"", SkOperand2::kS32, 123|456, 0, NULL }, + { "'123'|456", SkOperand2::kS32, 123|456, 0, NULL }, + { "'2'<11", SkOperand2::kS32, 1, 0, NULL }, + { "2<'11'", SkOperand2::kS32, 1, 0, NULL }, + { "'2'<'11'", SkOperand2::kS32, 0, 0, NULL }, testInt(123), testInt(-345), testInt(+678), @@ -1461,15 +1462,15 @@ static const SkScriptNAnswer2 scriptTests[] = { // logic testInt(1?2:3), testInt(0?2:3), - testInt(1&&2||3), - testInt(1&&0||3), - testInt(1&&0||0), - testInt(1||0&&3), - testInt(0||0&&3), - testInt(0||1&&3), + testInt((1&&2)||3), + testInt((1&&0)||3), + testInt((1&&0)||0), + testInt(1||(0&&3)), + testInt(0||(0&&3)), + testInt(0||(1&&3)), testInt(0&&1?2:3) #ifdef SK_CAN_USE_FLOAT - , { "123.5", SkOperand2::kScalar, 0, SkIntToScalar(123) + SK_Scalar1/2 } + , { "123.5", SkOperand2::kScalar, 0, SkIntToScalar(123) + SK_Scalar1/2, NULL } #endif }; diff --git a/src/svg/SkSVGParser.cpp b/src/svg/SkSVGParser.cpp index df861780b2..f4ad1987f9 100644 --- a/src/svg/SkSVGParser.cpp +++ b/src/svg/SkSVGParser.cpp @@ -76,8 +76,8 @@ void SkSVGParser::Delete(SkTDArray<SkSVGElement*>& fChildren) { int SkSVGParser::findAttribute(SkSVGBase* element, const char* attrValue, size_t len, bool isPaint) { const SkSVGAttribute* attributes; - int count = element->getAttributes(&attributes); - int result = 0; + size_t count = element->getAttributes(&attributes); + size_t result = 0; while (result < count) { if (strncmp(attributes->fName, attrValue, len) == 0 && strlen(attributes->fName) == len) { SkASSERT(result == (attributes->fOffset - @@ -200,7 +200,7 @@ bool SkSVGParser::onStartElementLen(const char name[], size_t len) { } else if (fInSVG == false) return false; const char* nextColon = strchr(name, ':'); - if (nextColon && nextColon - name < len) + if (nextColon && (size_t)(nextColon - name) < len) return false; SkSVGTypes type = GetType(name, len); // SkASSERT(type >= 0); diff --git a/src/utils/unix/SkOSWindow_Unix.cpp b/src/utils/unix/SkOSWindow_Unix.cpp index 4ec0c74306..ae881d5148 100644 --- a/src/utils/unix/SkOSWindow_Unix.cpp +++ b/src/utils/unix/SkOSWindow_Unix.cpp @@ -76,7 +76,7 @@ void SkOSWindow::post_linuxevent() long event_mask = NoEventMask; XClientMessageEvent event; event.type = ClientMessage; - Atom myAtom; + Atom myAtom(0); event.message_type = myAtom; event.format = 32; event.data.l[0] = 0; diff --git a/src/views/SkBorderView.cpp b/src/views/SkBorderView.cpp index 3a9c4492b7..74a24775f4 100644 --- a/src/views/SkBorderView.cpp +++ b/src/views/SkBorderView.cpp @@ -5,8 +5,10 @@ #include "SkTime.h" #include "SkStackViewLayout.h" -SkBorderView::SkBorderView() : fTop(SkIntToScalar(0)), fLeft(SkIntToScalar(0)), - fRight(SkIntToScalar(0)), fBottom(SkIntToScalar(0)) +SkBorderView::SkBorderView() : fLeft(SkIntToScalar(0)), + fRight(SkIntToScalar(0)), + fTop(SkIntToScalar(0)), + fBottom(SkIntToScalar(0)) { fAnim.setHostEventSink(this); init_skin_anim(kBorder_SkinEnum, &fAnim); diff --git a/src/views/SkView.cpp b/src/views/SkView.cpp index 7969d3d23c..1cd63394db 100644 --- a/src/views/SkView.cpp +++ b/src/views/SkView.cpp @@ -552,7 +552,7 @@ SkView* SkView::attachChildToFront(SkView* child) { SkASSERT(child != this); - if (child == NULL || fFirstChild && fFirstChild->fPrevSibling == child) + if (child == NULL || (fFirstChild && fFirstChild->fPrevSibling == child)) goto DONE; child->ref(); diff --git a/src/views/SkWidgetViews.cpp b/src/views/SkWidgetViews.cpp index 109e6206ba..2705307472 100644 --- a/src/views/SkWidgetViews.cpp +++ b/src/views/SkWidgetViews.cpp @@ -117,7 +117,7 @@ void SkWidgetView::setLabel(const char label[]) void SkWidgetView::setLabel(const char label[], size_t len) { - if (label == NULL && fLabel.size() != 0 || !fLabel.equals(label, len)) + if ((label == NULL && fLabel.size() != 0) || !fLabel.equals(label, len)) { SkString tmp(label, len); @@ -368,7 +368,7 @@ SkView* SkWidgetFactory(const char name[]) }; - for (int i = 0; i < SK_ARRAY_COUNT(gNames); i++) + for (size_t i = 0; i < SK_ARRAY_COUNT(gNames); i++) if (!strcmp(gNames[i], name)) return SkWidgetFactory((SkWidgetEnum)i); |