aboutsummaryrefslogtreecommitdiffhomepage
path: root/tools/Resources.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tools/Resources.cpp')
-rw-r--r--tools/Resources.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/tools/Resources.cpp b/tools/Resources.cpp
index 9d54026986..002d4111ae 100644
--- a/tools/Resources.cpp
+++ b/tools/Resources.cpp
@@ -42,8 +42,17 @@ std::unique_ptr<SkStreamAsset> GetResourceAsStream(const char* resource) {
}
#ifdef SK_EMBED_RESOURCES
+
+#include "ResourceFactory.h"
+
+sk_sp<SkData> (*gResourceFactory)(const char*) = nullptr;
+
extern BinaryAsset gResources[];
+
sk_sp<SkData> GetResourceAsData(const char* resource) {
+ if (gResourceFactory) {
+ return gResourceFactory(resource);
+ }
for (const BinaryAsset* ptr = gResources; ptr->name; ++ptr) {
if (0 == strcmp(resource, ptr->name)) {
return SkData::MakeWithoutCopy(ptr->data, ptr->len);