From e1bc274295ec57cb3d3f01aaa8abff3b49c76c73 Mon Sep 17 00:00:00 2001 From: "vandebo@chromium.org" Date: Tue, 21 Jun 2011 22:26:39 +0000 Subject: [PATCH] Fix a batch of coverity defects, uninitialized class fields. In SkClipStack::B2FIter::Clip, SkWriter32, SkClipStack::Rec, SkDeque::F2BIter, SkPDFShader::State CID 15427,15433,15533,15532,16274,16740 Review URL: http://codereview.appspot.com/4630055 git-svn-id: http://skia.googlecode.com/svn/trunk@1669 2bbb7eff-a529-9590-31e7-b0007b416f81 --- include/core/SkClipStack.h | 1 + include/core/SkWriter32.h | 12 +++++++----- src/core/SkClipStack.cpp | 1 + src/core/SkDeque.cpp | 4 +--- src/pdf/SkPDFShader.cpp | 5 +++-- 5 files changed, 13 insertions(+), 10 deletions(-) diff --git a/include/core/SkClipStack.h b/include/core/SkClipStack.h index 6e8da76..bc2d6f6 100644 --- a/include/core/SkClipStack.h +++ b/include/core/SkClipStack.h @@ -42,6 +42,7 @@ public: B2FIter(const SkClipStack& stack); struct Clip { + Clip() : fRect(NULL), fPath(NULL), fOp(SkRegion::kIntersect_Op) {} friend bool operator==(const Clip& a, const Clip& b); friend bool operator!=(const Clip& a, const Clip& b); const SkRect* fRect; // if non-null, this is a rect clip diff --git a/include/core/SkWriter32.h b/include/core/SkWriter32.h index c8ebb6a..bb42b4c 100644 --- a/include/core/SkWriter32.h +++ b/include/core/SkWriter32.h @@ -28,11 +28,13 @@ class SkWStream; class SkWriter32 : SkNoncopyable { public: - SkWriter32(size_t minSize) { - fMinSize = minSize; - fSize = 0; - fHead = fTail = NULL; - fSingleBlock = NULL; + SkWriter32(size_t minSize) + : fMinSize(minSize), + fSize(0), + fSingleBlock(NULL), + fSingleBlockSize(0), + fHead(NULL), + fTail(NULL) { } ~SkWriter32(); diff --git a/src/core/SkClipStack.cpp b/src/core/SkClipStack.cpp index 5061ac3..0786ec8 100644 --- a/src/core/SkClipStack.cpp +++ b/src/core/SkClipStack.cpp @@ -22,6 +22,7 @@ struct SkClipStack::Rec { } Rec(int saveCount, const SkPath& path, SkRegion::Op op) : fPath(path) { + fRect.setEmpty(); fSaveCount = saveCount; fOp = op; fState = kPath_State; diff --git a/src/core/SkDeque.cpp b/src/core/SkDeque.cpp index 9d685ee..b78c0e0 100644 --- a/src/core/SkDeque.cpp +++ b/src/core/SkDeque.cpp @@ -225,9 +225,7 @@ void SkDeque::pop_back() { /////////////////////////////////////////////////////////////////////////////// -SkDeque::F2BIter::F2BIter() { - fPos = NULL; -} +SkDeque::F2BIter::F2BIter() : fHead(NULL), fPos(NULL), fElemSize(0) {} SkDeque::F2BIter::F2BIter(const SkDeque& d) { this->reset(d); diff --git a/src/pdf/SkPDFShader.cpp b/src/pdf/SkPDFShader.cpp index 6845e09..1f58f1f 100644 --- a/src/pdf/SkPDFShader.cpp +++ b/src/pdf/SkPDFShader.cpp @@ -749,12 +749,13 @@ bool SkPDFShader::State::operator==(const SkPDFShader::State& b) const { SkPDFShader::State::State(const SkShader& shader, const SkMatrix& canvasTransform, const SkIRect& bbox) : fCanvasTransform(canvasTransform), - fBBox(bbox) { - + fBBox(bbox), + fPixelGeneration(0) { fInfo.fColorCount = 0; fInfo.fColors = NULL; fInfo.fColorOffsets = NULL; shader.getLocalMatrix(&fShaderTransform); + fImageTileModes[0] = fImageTileModes[1] = SkShader::kClamp_TileMode; fType = shader.asAGradient(&fInfo); -- 2.7.4