stevex
February 8, 2025, 6:57pm
1
Godot Version
4.3
Question
Sometimes I run into an assertion from the engine related to something I’m going in GDScript.
Current one is this:
E 0:00:27:0502 _push_unhandled_input_internal: Condition "!is_inside_tree()" is true.
<C++ Source> scene/main/viewport.cpp:3314 @ _push_unhandled_input_internal()
Is there any way to determine what GDScript line is being processed when that happens?
Thanks
Seeing your code would help. Are you using a unit testing framework for this assertion?
Not knowing your code, If you look at the C source code on github scene/main/viewport.cpp:3314 it is executing
ev = _make_input_local(p_event);
inside this deprecated method at line 3296.
void Viewport::push_unhandled_input(const Ref<InputEvent> &p_event, bool p_local_coords)
Check this link about a fix if that is the issue
stevex
February 10, 2025, 2:57pm
4
I fixed this particular issue - it was a node being removed from the tree in a wrong spot - but I was asking more generally if there’s a way in Godot to look at what the GDScript was doing when an engine assertion is thrown.