Here comes he RunT!

This commit is contained in:
2026-02-20 23:40:15 -08:00
parent 88d989f9cd
commit aaf4596217
36 changed files with 11508 additions and 416 deletions

View File

@ -131,7 +131,7 @@ namespace {
return;
}
if (args.Length() > 1) {
kinc_log(KINC_LOG_LEVEL_WARNING, "Krom workers only support 1 argument for postMessage");
kinc_log(KINC_LOG_LEVEL_WARNING, "RunT workers only support 1 argument for postMessage");
}
Local<External> external = Local<External>::Cast(args.Data());
@ -374,7 +374,7 @@ namespace {
return;
}
if (args.Length() > 1) {
kinc_log(KINC_LOG_LEVEL_WARNING, "Krom workers only support 1 argument for postMessage");
kinc_log(KINC_LOG_LEVEL_WARNING, "RunT workers only support 1 argument for postMessage");
}
Local<External> external = Local<External>::Cast(args.This()->GetInternalField(0));
@ -422,7 +422,7 @@ namespace {
}
if (args.Length() > 1) {
kinc_log(KINC_LOG_LEVEL_WARNING, "Krom only supports one argument for worker constructor, ignoring extra arguments");
kinc_log(KINC_LOG_LEVEL_WARNING, "RunT only supports one argument for worker constructor, ignoring extra arguments");
}
WorkerMessagePort* messagePort = new WorkerMessagePort;
@ -472,6 +472,8 @@ namespace {
}
void bind_worker_class(Isolate* isolate, const v8::Global<v8::Context>& context) {
// TODO: verify lock
Locker locker{isolate};
Isolate::Scope isolate_scope(isolate);
HandleScope handle_scope(isolate);
@ -495,11 +497,18 @@ void bind_worker_class(Isolate* isolate, const v8::Global<v8::Context>& context)
}
void handle_worker_messages(v8::Isolate* isolate, const v8::Global<v8::Context>& context) {
Isolate::Scope isolate_scope(isolate);
// TODO: re-investigate
if (!isolate) {
return;
}
Locker locker(isolate);
Isolate::Scope isolate_scope(isolate);
HandleScope handle_scope(isolate);
ContextData* context_data = (ContextData*)(isolate->GetData(worker_data_slot));
if (!context_data) {
return;
}
if (context_data->workers.size() == 0) {
return;
}