mirror of
https://github.com/godotengine/godot.git
synced 2026-01-06 10:11:57 +03:00
Merge pull request #104738 from YYF233333/cleanup_rid_owner
Use `LocalVector` in `RID_Owner::get_owned_list`
This commit is contained in:
@@ -841,13 +841,11 @@ bool ShaderGLES3::shader_cache_save_compressed_zstd = true;
|
||||
bool ShaderGLES3::shader_cache_save_debug = true;
|
||||
|
||||
ShaderGLES3::~ShaderGLES3() {
|
||||
List<RID> remaining;
|
||||
version_owner.get_owned_list(&remaining);
|
||||
LocalVector<RID> remaining = version_owner.get_owned_list();
|
||||
if (remaining.size()) {
|
||||
ERR_PRINT(itos(remaining.size()) + " shaders of type " + name + " were never freed");
|
||||
while (remaining.size()) {
|
||||
version_free(remaining.front()->get());
|
||||
remaining.pop_front();
|
||||
for (RID &rid : remaining) {
|
||||
version_free(rid);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1470,10 +1470,7 @@ void TextureStorage::texture_set_detect_roughness_callback(RID p_texture, RS::Te
|
||||
}
|
||||
|
||||
void TextureStorage::texture_debug_usage(List<RS::TextureInfo> *r_info) {
|
||||
List<RID> textures;
|
||||
texture_owner.get_owned_list(&textures);
|
||||
|
||||
for (const RID &rid : textures) {
|
||||
for (const RID &rid : texture_owner.get_owned_list()) {
|
||||
Texture *t = texture_owner.get_or_null(rid);
|
||||
if (!t) {
|
||||
continue;
|
||||
|
||||
Reference in New Issue
Block a user