SkPaint: eliminate some dead bytes in 64-bit build.
+ memcpy-based copy constructor was hiding this gap -> manual copy constructor.
+ Split tests for finer-grained failures.
BUG=skia:
Committed: http://code.google.com/p/skia/source/detail?r=13856
Committed: http://code.google.com/p/skia/source/detail?r=13887
R=reed@google.com, mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/203203003
git-svn-id: http://skia.googlecode.com/svn/trunk@13927 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/include/core/SkPaint.h b/include/core/SkPaint.h
index e86d011..7a647f0 100644
--- a/include/core/SkPaint.h
+++ b/include/core/SkPaint.h
@@ -1046,10 +1046,6 @@
private:
SkTypeface* fTypeface;
- SkScalar fTextSize;
- SkScalar fTextScaleX;
- SkScalar fTextSkewX;
-
SkPathEffect* fPathEffect;
SkShader* fShader;
SkXfermode* fXfermode;
@@ -1060,10 +1056,12 @@
SkImageFilter* fImageFilter;
SkAnnotation* fAnnotation;
+ SkScalar fTextSize;
+ SkScalar fTextScaleX;
+ SkScalar fTextSkewX;
SkColor fColor;
SkScalar fWidth;
SkScalar fMiterLimit;
-
union {
struct {
// all of these bitfields should add up to 32
@@ -1078,11 +1076,11 @@
};
uint32_t fBitfields;
};
+ uint32_t fDirtyBits;
+
uint32_t getBitfields() const { return fBitfields; }
void setBitfields(uint32_t bitfields);
- uint32_t fDirtyBits;
-
SkDrawCacheProc getDrawCacheProc() const;
SkMeasureCacheProc getMeasureCacheProc(TextBufferDirection dir,
bool needFullMetrics) const;