Skip to content

Custom performance monitor in BTRoot produces erros when node is removed from tree #3

Closed
@Earewien

Description

@Earewien

Errors are displayed in error output when a node is queue free (so removed from tree) :

E 0:00:10:0020   get_custom_monitor: Error calling from custom monitor 'BTRoot/BTRoot-33319552279' to callable: '_compute_last_exec_time': Instance is null
  <C++ Error>    Condition "error" is true. Returning: return_value
  <C++ Source>   main/performance.cpp:240 @ get_custom_monitor()
E 0:00:10:0024   tick: Value of custom monitor 'BTRoot/BTRoot-33319552279' is not a number
  <C++ Source>   core/debugger/remote_debugger.cpp:79 @ tick()

In BTRoot node, a custom performance monitor is created if not running insde the Godot Editor. But, this monitor is never removed, so when the node become invalid (free, remove from scene), errors happen.

A safer way would be to create this custom monitor on tree entered, and remove it on tree exited.

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions