diff options
Diffstat (limited to 'tools/Resources.cpp')
-rw-r--r-- | tools/Resources.cpp | 9 |
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); |