Grab-bag of memory fixes. SkFlatMatrix::Flatten had the same issue as
Sk2DPathEffect: it was encoding a partially-unintialized matrix type mask.
The others are simply uninitialized vars in the sample code.
Review URL: http://codereview.appspot.com/4539072/
git-svn-id: http://skia.googlecode.com/svn/trunk@1414 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/samplecode/SampleHairline.cpp b/samplecode/SampleHairline.cpp
index ab5ac8c..8368f5b 100644
--- a/samplecode/SampleHairline.cpp
+++ b/samplecode/SampleHairline.cpp
@@ -186,6 +186,7 @@
bool fDoAA;
public:
HairlineView() {
+ fCounter = 0;
fProcIndex = 0;
fDoAA = true;
fNow = 0;
diff --git a/samplecode/SampleLineClipper.cpp b/samplecode/SampleLineClipper.cpp
index d0a8667..ac6b013 100644
--- a/samplecode/SampleLineClipper.cpp
+++ b/samplecode/SampleLineClipper.cpp
@@ -166,6 +166,7 @@
LineClipperView() {
fProcIndex = 0;
fCounter = 0;
+ fNow = 0;
int x = (640 - W)/2;
int y = (480 - H)/2;
diff --git a/src/core/SkPictureFlat.cpp b/src/core/SkPictureFlat.cpp
index 5c5ea0b..105df3c 100644
--- a/src/core/SkPictureFlat.cpp
+++ b/src/core/SkPictureFlat.cpp
@@ -28,9 +28,9 @@
}
SkFlatMatrix* SkFlatMatrix::Flatten(SkChunkAlloc* heap, const SkMatrix& matrix, int index) {
- int32_t size = sizeof(SkMatrix);
+ size_t size = matrix.flatten(NULL);
SkFlatMatrix* result = (SkFlatMatrix*) INHERITED::Alloc(heap, size, index);
- memcpy(&result->fMatrixData, &matrix, sizeof(SkMatrix));
+ matrix.flatten(&result->fMatrixData);
return result;
}