Skip to content

Commit 309c4d9

Browse files
committed
Fix Canvas
1 parent 124def4 commit 309c4d9

File tree

1 file changed

+5
-4
lines changed

1 file changed

+5
-4
lines changed

Polyfills/Canvas/Source/Canvas.cpp

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -54,26 +54,27 @@ namespace Babylon::Polyfills::Internal
5454

5555
Napi::Value NativeCanvas::LoadTTFAsync(const Napi::CallbackInfo& info)
5656
{
57-
const auto fontName = info[0].As<Napi::String>().Utf8Value();
57+
auto fontName = info[0].As<Napi::String>().Utf8Value();
5858
const auto buffer = info[1].As<Napi::ArrayBuffer>();
5959
std::vector<uint8_t> fontBuffer(buffer.ByteLength());
6060
memcpy(fontBuffer.data(), (uint8_t*)buffer.Data(), buffer.ByteLength());
6161

6262
auto& runtime = JsRuntime::GetFromJavaScript(info.Env());
6363
auto deferred = Napi::Promise::Deferred::New(info.Env());
64+
auto promise = deferred.Promise();
6465

6566
auto& deviceContext = Graphics::DeviceContext::GetFromJavaScript(info.Env());
6667
auto update = deviceContext.GetUpdate("update");
67-
arcana::make_task(update.Scheduler(), arcana::cancellation::none(), [fontName = std::move(fontName), fontData = std::move(fontBuffer), &runtime, deferred]()
68+
arcana::make_task(update.Scheduler(), arcana::cancellation::none(), [fontName = std::move(fontName), fontData = std::move(fontBuffer), &runtime, deferred = std::move(deferred)]() mutable
6869
{
6970
fontsInfos[fontName] = fontData;
70-
runtime.Dispatch([deferred](Napi::Env env)
71+
runtime.Dispatch([deferred = std::move(deferred)](Napi::Env env)
7172
{
7273
deferred.Resolve(env.Undefined());
7374
});
7475
});
7576

76-
return deferred.Promise();
77+
return promise;
7778
}
7879

7980
Napi::Value NativeCanvas::GetContext(const Napi::CallbackInfo& info)

0 commit comments

Comments
 (0)