From 0e659b423095b494cca2eb9fb9b91cc246ac4380 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ignacio=20Rold=C3=A1n=20Etcheverry?= Date: Thu, 20 Jan 2022 22:09:03 +0100 Subject: [PATCH] Fix false reporting unclaimed StringName at exit due to static refs --- core/string/string_name.cpp | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/core/string/string_name.cpp b/core/string/string_name.cpp index 61742ac582d..11674629fc7 100644 --- a/core/string/string_name.cpp +++ b/core/string/string_name.cpp @@ -84,12 +84,15 @@ void StringName::cleanup() { for (int i = 0; i < STRING_TABLE_LEN; i++) { while (_table[i]) { _Data *d = _table[i]; - lost_strings++; - if (d->static_count.get() != d->refcount.get() && OS::get_singleton()->is_stdout_verbose()) { - if (d->cname) { - print_line("Orphan StringName: " + String(d->cname)); - } else { - print_line("Orphan StringName: " + String(d->name)); + if (d->static_count.get() != d->refcount.get()) { + lost_strings++; + + if (OS::get_singleton()->is_stdout_verbose()) { + if (d->cname) { + print_line("Orphan StringName: " + String(d->cname)); + } else { + print_line("Orphan StringName: " + String(d->name)); + } } }