From a7e8aa405394c383c7d84e667c9a4165b2cfaf3b Mon Sep 17 00:00:00 2001 From: Juan Linietsky <reduzio@gmail.com> Date: Thu, 24 Aug 2017 23:36:11 -0300 Subject: [PATCH] Fix bug where not all previews are shown, closes #9895 --- editor/editor_resource_preview.cpp | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/editor/editor_resource_preview.cpp b/editor/editor_resource_preview.cpp index dcfe68b2861..99ce843880f 100644 --- a/editor/editor_resource_preview.cpp +++ b/editor/editor_resource_preview.cpp @@ -180,11 +180,13 @@ void EditorResourcePreview::_thread() { if (cache.has(item.path)) { //already has it because someone loaded it, just let it know it's ready + String path = item.path; if (item.resource.is_valid()) { - item.path += ":" + itos(cache[item.path].last_hash); //keep last hash (see description of what this is in condition below) + path += ":" + itos(cache[item.path].last_hash); //keep last hash (see description of what this is in condition below) } - _preview_ready(item.path, cache[item.path].preview, item.id, item.function, item.userdata); + print_line("cached: " + item.path); + _preview_ready(path, cache[item.path].preview, item.id, item.function, item.userdata); preview_mutex->unlock(); } else { @@ -199,12 +201,16 @@ void EditorResourcePreview::_thread() { if (item.resource.is_valid()) { + print_line("generated: " + item.path); + texture = _generate_preview(item, String()); //adding hash to the end of path (should be ID:<objid>:<hash>) because of 5 argument limit to call_deferred _preview_ready(item.path + ":" + itos(item.resource->hash_edited_version()), texture, item.id, item.function, item.userdata); } else { + print_line("from file: " + item.path); + String temp_path = EditorSettings::get_singleton()->get_settings_path().plus_file("tmp"); String cache_base = ProjectSettings::get_singleton()->globalize_path(item.path).md5_text(); cache_base = temp_path.plus_file("resthumb-" + cache_base);