diff options
author | Juan Linietsky <red@kyoko> | 2015-05-01 23:20:41 -0300 |
---|---|---|
committer | Juan Linietsky <red@kyoko> | 2015-05-01 23:20:41 -0300 |
commit | dda60296d81edaabfdb56f47a2c949b5dad283fb (patch) | |
tree | b41e31cc4620689a1e91adf852d0926fc600607a /core/string_db.cpp | |
parent | fb8b740fcb50dc38526b458af096b72d1303d3e5 (diff) | |
parent | 61e90385f6cbeebb8d3d03c33078802c2fa11eda (diff) |
Merge branch 'master' of https://github.com/okamstudio/godot
Diffstat (limited to 'core/string_db.cpp')
-rw-r--r-- | core/string_db.cpp | 20 |
1 files changed, 17 insertions, 3 deletions
diff --git a/core/string_db.cpp b/core/string_db.cpp index ffb7dc194b..57fdd6e70f 100644 --- a/core/string_db.cpp +++ b/core/string_db.cpp @@ -5,7 +5,7 @@ /* GODOT ENGINE */ /* http://www.godotengine.org */ /*************************************************************************/ -/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2007-2015 Juan Linietsky, Ariel Manzur. */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -28,7 +28,7 @@ /*************************************************************************/ #include "string_db.h" #include "print_string.h" - +#include "os/os.h" StaticCString StaticCString::create(const char *p_ptr) { StaticCString scs; scs.ptr=p_ptr; return scs; } @@ -55,15 +55,29 @@ void StringName::setup() { void StringName::cleanup() { _global_lock(); + int lost_strings=0; for(int i=0;i<STRING_TABLE_LEN;i++) { while(_table[i]) { _Data*d=_table[i]; - _table[i]=_table[i]->next; + 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)); + } + } + + _table[i]=_table[i]->next; memdelete(d); } } + if (OS::get_singleton()->is_stdout_verbose() && lost_strings) { + print_line("StringName: "+itos(lost_strings)+" unclaimed string names at exit."); + } _global_unlock(); } |