Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'source/blender/draw/intern/draw_cache_impl_mesh.c')
-rw-r--r--source/blender/draw/intern/draw_cache_impl_mesh.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/source/blender/draw/intern/draw_cache_impl_mesh.c b/source/blender/draw/intern/draw_cache_impl_mesh.c
index c7ba707d403..d090832dc4b 100644
--- a/source/blender/draw/intern/draw_cache_impl_mesh.c
+++ b/source/blender/draw/intern/draw_cache_impl_mesh.c
@@ -1559,8 +1559,14 @@ void DRW_mesh_batch_cache_create_requested(struct TaskGraph *task_graph,
scene,
ts,
use_hide);
- /* TODO(jbakker): Work-around for threading issues in 2.90. See T79533, T79038. Needs to be
- * solved or made permanent in 2.91. Underlying issue still needs to be researched. */
+
+ /* Ensure that all requested batches have finished.
+ * Ideally we want to remove this sync, but there are cases where this doesn't work.
+ * See T79038 for example.
+ *
+ * An idea to improve this is to separate the Object mode from the edit mode draw caches. And
+ * based on the mode the correct one will be updated. Other option is to look into using
+ * drw_batch_cache_generate_requested_delayed. */
BLI_task_graph_work_and_wait(task_graph);
#ifdef DEBUG
drw_mesh_batch_cache_check_available(task_graph, me);