From e6abdc943dfa33664d94c0b3cb27465039ea7819 Mon Sep 17 00:00:00 2001 From: Hugo Locurcio Date: Sat, 20 Feb 2021 02:05:19 +0100 Subject: Improve the `get_node()` error message to be more descriptive - Mention the origin of the `get_node()` call. - Mention whether the attempted path is absolute or relative. See #46214. --- scene/main/node.cpp | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'scene/main') diff --git a/scene/main/node.cpp b/scene/main/node.cpp index f6a0f5a6c0..3df8e07cff 100644 --- a/scene/main/node.cpp +++ b/scene/main/node.cpp @@ -1442,7 +1442,15 @@ Node *Node::get_node_or_null(const NodePath &p_path) const { Node *Node::get_node(const NodePath &p_path) const { Node *node = get_node_or_null(p_path); - ERR_FAIL_COND_V_MSG(!node, nullptr, "Node not found: " + p_path + "."); + + if (p_path.is_absolute()) { + ERR_FAIL_COND_V_MSG(!node, nullptr, + vformat(R"(Node not found: "%s" (absolute path attempted from "%s").)", p_path, get_path())); + } else { + ERR_FAIL_COND_V_MSG(!node, nullptr, + vformat(R"(Node not found: "%s" (relative to "%s").)", p_path, get_path())); + } + return node; } -- cgit v1.2.3