Find GDScript responsible for engine assertion

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

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.