1
0
mirror of https://github.com/godotengine/godot.git synced 2025-11-05 12:10:55 +00:00

GDExtension: Allocate GDExtensionScriptInstanceInfo2 for compatibility on the heap to prevent crash

This commit is contained in:
David Snopek
2023-08-31 15:19:31 -05:00
parent 549fcce5f8
commit 83faf84ec9
2 changed files with 30 additions and 26 deletions

View File

@@ -631,6 +631,7 @@ VARIANT_ENUM_CAST(ScriptLanguageExtension::CodeCompletionLocation)
class ScriptInstanceExtension : public ScriptInstance {
public:
const GDExtensionScriptInstanceInfo2 *native_info;
bool free_native_info = false;
struct {
GDExtensionClassNotification notification_func;
} deprecated_native_info;
@@ -831,6 +832,9 @@ public:
if (native_info->free_func) {
native_info->free_func(instance);
}
if (free_native_info) {
memfree(const_cast<GDExtensionScriptInstanceInfo2 *>(native_info));
}
}
#if defined(__GNUC__) && !defined(__clang__)