Fix a bug where a crvm dependency is freed if it only has classes

This commit is contained in:
2025-11-14 12:12:22 -06:00
parent 5a384ca015
commit 06e19150e8
5 changed files with 31 additions and 3 deletions

View File

@@ -3996,6 +3996,28 @@ namespace Tesses::CrossLang {
if(ttask != nullptr)
{
if(key == "SetSucceeded")
{
if(args.size() > 0)
{
ttask->SetSucceeded(args[0]);
}
cse.back()->Push(gc, Undefined());
return false;
}
if(key == "SetFailed")
{
if(args.size() > 0)
{
try {
throw VMByteCodeException(gc,args[0]);
} catch(...) {
ttask->SetFailed(std::current_exception());
}
}
cse.back()->Push(gc, Undefined());
return false;
}
if(key == "ContinueWith")
{
TCallable* callable2;
@@ -7002,7 +7024,7 @@ namespace Tesses::CrossLang {
}
cse.erase(cse.end()-1);
}
gc->BarrierEnd();
gc->BarrierEnd();
for(auto item : callable)
{