aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu/vk/GrVkResource.h
diff options
context:
space:
mode:
authorGravatar Greg Daniel <egdaniel@google.com>2018-06-26 11:26:44 -0400
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2018-06-26 17:30:53 +0000
commit21580ba3aeefe661bab5a16135e8e5bb986556e5 (patch)
treec9ca69cd2e67401783c78c5aa77df420755cb6ac /src/gpu/vk/GrVkResource.h
parenta57488a1f5c14c2114c57880b85c1bbc90024973 (diff)
Fix some static intializers in Vulkan code.
Bug: skia: Change-Id: Ia5160376ff456874459430e51c2f57acdb1a4de1 Reviewed-on: https://skia-review.googlesource.com/137584 Reviewed-by: Brian Osman <brianosman@google.com> Reviewed-by: Chris Blume <cblume@chromium.org> Commit-Queue: Greg Daniel <egdaniel@google.com>
Diffstat (limited to 'src/gpu/vk/GrVkResource.h')
-rw-r--r--src/gpu/vk/GrVkResource.h14
1 files changed, 10 insertions, 4 deletions
diff --git a/src/gpu/vk/GrVkResource.h b/src/gpu/vk/GrVkResource.h
index 9ddde474c1..4b42ecbf3e 100644
--- a/src/gpu/vk/GrVkResource.h
+++ b/src/gpu/vk/GrVkResource.h
@@ -59,7 +59,6 @@ public:
private:
SkTHashSet<const GrVkResource*, GrVkResource::Hash> fHashSet;
};
- static Trace fTrace;
static uint32_t fKeyCounter;
#endif
@@ -69,7 +68,7 @@ public:
GrVkResource() : fRefCnt(1) {
#ifdef SK_TRACE_VK_RESOURCES
fKey = sk_atomic_fetch_add(&fKeyCounter, 1u, sk_memory_order_relaxed);
- fTrace.add(this);
+ GetTrace()->add(this);
#endif
}
@@ -148,6 +147,13 @@ public:
#endif
private:
+#ifdef SK_TRACE_VK_RESOURCES
+ static Trace* GetTrace() {
+ static Trace kTrace;
+ return &kTrace;
+ }
+#endif
+
/** Must be implemented by any subclasses.
* Deletes any Vk data associated with this resource
*/
@@ -166,7 +172,7 @@ private:
void internal_dispose(const GrVkGpu* gpu) const {
this->freeGPUData(gpu);
#ifdef SK_TRACE_VK_RESOURCES
- fTrace.remove(this);
+ GetTrace()->remove(this);
#endif
SkASSERT(0 == fRefCnt);
fRefCnt = 1;
@@ -179,7 +185,7 @@ private:
void internal_dispose() const {
this->abandonGPUData();
#ifdef SK_TRACE_VK_RESOURCES
- fTrace.remove(this);
+ GetTrace()->remove(this);
#endif
SkASSERT(0 == fRefCnt);
fRefCnt = 1;