You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
There is an issue in hot reloading where godot would segfault if you bind to self node when it gets hot reloaded.
Minimum example:
use godot::prelude::*;#[repr(C)]#[derive(GodotClass)]#[class(init, base = Node, tool)]pubstructMyNode{test:u64,base:Base<Node>,}#[godot_api]implINodeforMyNode{fnready(&mutself){let call = Callable::from_local_fn("test",
|_| {Ok(Variant::nil())},).bindv(&Array::from_iter([self.to_gd().to_variant()]));self.base_mut().connect(c"tree_entered",&call);}}structTest;#[gdextension]unsafeimplExtensionLibraryforTest{}
When a scene with this node is loaded in godot, and then you rebuild (and thus trigger a hot reload), and then attempt to close that scene, it will then cause godot to crash entirely.
The text was updated successfully, but these errors were encountered:
It's a segmentation fault. I don't have a stack trace for this simple version since this one actually just directly segfaults without even dumping any errors
Although I think it is crashing somewhere in godot_core::builtin::callable::custom_callable::rust_callable_to_string_named because that was a stacktrace I found when running my actual code
There is an issue in hot reloading where godot would segfault if you bind to self node when it gets hot reloaded.
Minimum example:
When a scene with this node is loaded in godot, and then you rebuild (and thus trigger a hot reload), and then attempt to close that scene, it will then cause godot to crash entirely.
The text was updated successfully, but these errors were encountered: