Index: src/gpu/GrSurfaceProxy.cpp |
diff --git a/src/gpu/GrSurfaceProxy.cpp b/src/gpu/GrSurfaceProxy.cpp |
new file mode 100644 |
index 0000000000000000000000000000000000000000..b8b5d7510d40f5f9e0e39d1228b24e953019a630 |
--- /dev/null |
+++ b/src/gpu/GrSurfaceProxy.cpp |
@@ -0,0 +1,19 @@ |
+/* |
+ * Copyright 2016 Google Inc. |
+ * |
+ * Use of this source code is governed by a BSD-style license that can be |
+ * found in the LICENSE file. |
+ */ |
+ |
+#include "GrSurfaceProxy.h" |
+ |
+#include "SkAtomics.h" |
+ |
+uint32_t GrSurfaceProxy::CreateUniqueID() { |
+ static int32_t gUniqueID = SK_InvalidUniqueID; |
+ uint32_t id; |
+ do { |
+ id = static_cast<uint32_t>(sk_atomic_inc(&gUniqueID) + 1); |
+ } while (id == SK_InvalidUniqueID); |
+ return id; |
+} |