Browse Source

Make `RID_Owner<Texture>` threadsafe in `TextureStorage` for gles3

ACB 1 year ago
parent
commit
09d2c09434

+ 2 - 2
drivers/gles3/storage/texture_storage.h

@@ -404,8 +404,8 @@ private:
 	RID_Owner<CanvasTexture, true> canvas_texture_owner;
 
 	/* Texture API */
-
-	mutable RID_Owner<Texture> texture_owner;
+	// Textures can be created from threads, so this RID_Owner is thread safe.
+	mutable RID_Owner<Texture, true> texture_owner;
 
 	Ref<Image> _get_gl_image_and_format(const Ref<Image> &p_image, Image::Format p_format, Image::Format &r_real_format, GLenum &r_gl_format, GLenum &r_gl_internal_format, GLenum &r_gl_type, bool &r_compressed, bool p_force_decompress) const;
 

+ 1 - 1
servers/rendering/renderer_rd/storage_rd/texture_storage.h

@@ -172,7 +172,7 @@ private:
 		void cleanup();
 	};
 
-	//textures can be created from threads, so this RID_Owner is thread safe
+	// Textures can be created from threads, so this RID_Owner is thread safe.
 	mutable RID_Owner<Texture, true> texture_owner;
 	Texture *get_texture(RID p_rid) { return texture_owner.get_or_null(p_rid); };