aboutsummaryrefslogtreecommitdiffhomepage
path: root/gm/colormatrix.cpp
diff options
context:
space:
mode:
authorGravatar commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81>2014-01-17 17:55:02 +0000
committerGravatar commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81>2014-01-17 17:55:02 +0000
commit2ab1ba055536825552d6b49f0210c4e1531f02f0 (patch)
treeeb9064b98d3cf57316bd1586c4ba09f41f432aea /gm/colormatrix.cpp
parent7322893af0f94c68401bc01677e9dcfca586d5b4 (diff)
Make leak counters thread-safe and turn them on by default for Debug
Make leak counters implemented with SK_DECLARE_INST_COUNT thread-safe. Enable the leak counting for Debug builds when Skia is built as a static library. Having SK_DECLARE_INST_COUNT without SK_DEFINE_INST_COUNT relies on static variables in member functions declared in the header files. These might be duplicated in the clients of the library when Skia is built as a dynamic library, producing incorrect operation. Protect the instance counter initialization step (initStep) by using SkOnce. Makes SkOnce.h part of the public API, since SkInstCnt is public. Protect the per-class child list shared variable with a per-class mutex. Changes the behavior in the way that if the child list has been "cleaned up", it will still try to create subsequent child lists. BUG=skia:1219 R=robertphillips@google.com, mtklein@google.com, bsalomon@google.com, bungeman@google.com, djsollen@google.com Author: kkinnunen@nvidia.com Review URL: https://codereview.chromium.org/99483003 git-svn-id: http://skia.googlecode.com/svn/trunk@13120 2bbb7eff-a529-9590-31e7-b0007b416f81
Diffstat (limited to 'gm/colormatrix.cpp')
-rw-r--r--gm/colormatrix.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/gm/colormatrix.cpp b/gm/colormatrix.cpp
index 9ab6563040..2f98693da2 100644
--- a/gm/colormatrix.cpp
+++ b/gm/colormatrix.cpp
@@ -12,9 +12,9 @@
#define WIDTH 500
#define HEIGHT 500
-class SkOnce {
+class SkDoOnce {
public:
- SkOnce() : fOnce(false) {};
+ SkDoOnce() : fOnce(false) {};
bool once() const {
if (fOnce) {
@@ -39,7 +39,7 @@ static void setArray(SkPaint* paint, const SkScalar array[]) {
namespace skiagm {
class ColorMatrixGM : public GM {
- SkOnce fOnce;
+ SkDoOnce fOnce;
void init() {
if (fOnce.once()) {
fSolidBitmap = this->createSolidBitmap(64, 64);