aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorGravatar commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81>2014-05-07 19:56:27 +0000
committerGravatar commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81>2014-05-07 19:56:27 +0000
commit50ca12be56f5c3803b60d6a6a2eafed45316bf09 (patch)
tree1d7714e39f00c7deb88acb5a7b1fe84124b73bd2 /src
parent9f469749bf85e4368520087f33d19d221f3a1285 (diff)
Statically initialize those zero-size singletons.
This way GCC/Clang don't generate the magic static code to call the pointless T::T() once in a threadsafe way. = {} is plenty initialized. BUG=skia:2378 Committed: http://code.google.com/p/skia/source/detail?r=14623 R=bungeman@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/270353003 git-svn-id: http://skia.googlecode.com/svn/trunk@14626 2bbb7eff-a529-9590-31e7-b0007b416f81
Diffstat (limited to 'src')
-rw-r--r--src/record/SkRecord.h2
-rw-r--r--src/record/SkRecords.h1
2 files changed, 1 insertions, 2 deletions
diff --git a/src/record/SkRecord.h b/src/record/SkRecord.h
index ccfa1dd556..068155e47f 100644
--- a/src/record/SkRecord.h
+++ b/src/record/SkRecord.h
@@ -167,7 +167,7 @@ private:
// We could just return NULL but it's sort of confusing to return NULL on success.
template <typename T>
SK_WHEN(SkTIsEmpty<T>, T*) allocCommand() {
- static T singleton;
+ static T singleton = {};
return &singleton;
}
diff --git a/src/record/SkRecords.h b/src/record/SkRecords.h
index bfa15496f3..d4b6852d70 100644
--- a/src/record/SkRecords.h
+++ b/src/record/SkRecords.h
@@ -63,7 +63,6 @@ enum Type { SK_RECORD_TYPES(ENUM) };
#define RECORD0(T) \
struct T { \
static const Type kType = T##_Type; \
- T() {} \
};
// We try to be flexible about the types the constructors take. Instead of requring the exact type