1
0
Fork 0

Fix: [Script] Prevent cloning of API instances (#13947)

pull/13942/head
Loïc Guilloux 2025-04-02 12:30:57 +02:00 committed by GitHub
parent 2ae84f3c9e
commit 827b03a32c
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 8 additions and 0 deletions

View File

@ -7,6 +7,8 @@
/* THIS FILE IS AUTO-GENERATED; PLEASE DO NOT ALTER MANUALLY */
#include "../script_fatalerror.hpp"
${SQUIRREL_INCLUDES}
static SQInteger ${APIUC}ObjectConstructor(HSQUIRRELVM vm)
@ -14,11 +16,17 @@ static SQInteger ${APIUC}ObjectConstructor(HSQUIRRELVM vm)
return sq_throwerror(vm, "${APIUC}Object is not instantiable");
}
static SQInteger ${APIUC}ObjectCloned(HSQUIRRELVM)
{
throw Script_FatalError("This instance is not cloneable");
}
void SQ${APIUC}_RegisterAll(Squirrel *engine)
{
DefSQClass<ScriptObject, ScriptType::${APIUC}> SQ${APIUC}Object("${APIUC}Object");
SQ${APIUC}Object.PreRegister(engine);
SQ${APIUC}Object.DefSQAdvancedStaticMethod(engine, &${APIUC}ObjectConstructor, "constructor");
SQ${APIUC}Object.DefSQAdvancedStaticMethod(engine, &${APIUC}ObjectCloned, "_cloned");
SQ${APIUC}Object.PostRegister(engine);
${SQUIRREL_REGISTER}