Commit: 217727cb35651a674fbca1718f0d5fc7e2107306
Author: Clément Foucault
Date:   Thu Dec 20 23:42:21 2018 +0100
Branches: blender2.8
https://developer.blender.org/rB217727cb35651a674fbca1718f0d5fc7e2107306

Mesh Batch Cache: Fix missing flag for looptris indexbuf generation

Fix T59637: Crash report - Overlays -> Face Orientation causes crash

===================================================================

M       source/blender/draw/intern/draw_cache_impl_mesh.c

===================================================================

diff --git a/source/blender/draw/intern/draw_cache_impl_mesh.c 
b/source/blender/draw/intern/draw_cache_impl_mesh.c
index 9a0daf244ef..d7c848909d3 100644
--- a/source/blender/draw/intern/draw_cache_impl_mesh.c
+++ b/source/blender/draw/intern/draw_cache_impl_mesh.c
@@ -5439,13 +5439,13 @@ void DRW_mesh_batch_cache_create_requested(Object *ob, 
Mesh *me)
        DRW_ADD_FLAG_FROM_VBO_REQUEST(mr_flag, cache->tess.pos_nor, 
MR_DATATYPE_VERT | MR_DATATYPE_LOOP | MR_DATATYPE_LOOPTRI | MR_DATATYPE_POLY);
        DRW_ADD_FLAG_FROM_VBO_REQUEST(mr_flag, cache->tess.wireframe_data, 
MR_DATATYPE_VERT | MR_DATATYPE_EDGE | MR_DATATYPE_LOOP | MR_DATATYPE_LOOPTRI);
        DRW_ADD_FLAG_FROM_IBO_REQUEST(mr_flag, cache->ibo.surf_tris, 
MR_DATATYPE_VERT | MR_DATATYPE_LOOP |  MR_DATATYPE_POLY | MR_DATATYPE_LOOPTRI);
-       DRW_ADD_FLAG_FROM_IBO_REQUEST(mr_flag, cache->ibo.loops_tris, 
MR_DATATYPE_LOOP | MR_DATATYPE_LOOPTRI);
+       DRW_ADD_FLAG_FROM_IBO_REQUEST(mr_flag, cache->ibo.loops_tris, 
MR_DATATYPE_LOOP | MR_DATATYPE_POLY | MR_DATATYPE_LOOPTRI);
        DRW_ADD_FLAG_FROM_IBO_REQUEST(mr_flag, cache->ibo.loops_lines, 
MR_DATATYPE_LOOP | MR_DATATYPE_POLY);
        DRW_ADD_FLAG_FROM_IBO_REQUEST(mr_flag, cache->ibo.edges_lines, 
MR_DATATYPE_VERT | MR_DATATYPE_EDGE);
        DRW_ADD_FLAG_FROM_IBO_REQUEST(mr_flag, cache->ibo.edges_adj_lines, 
MR_DATATYPE_VERT | MR_DATATYPE_LOOP | MR_DATATYPE_POLY | MR_DATATYPE_LOOPTRI);
        DRW_ADD_FLAG_FROM_IBO_REQUEST(mr_flag, cache->ibo.loose_edges_lines, 
MR_DATATYPE_VERT | MR_DATATYPE_EDGE);
        for (int i = 0; i < cache->mat_len; ++i) {
-               DRW_ADD_FLAG_FROM_IBO_REQUEST(mr_flag, 
cache->surf_per_mat_tris[i], MR_DATATYPE_LOOP | MR_DATATYPE_LOOPTRI);
+               DRW_ADD_FLAG_FROM_IBO_REQUEST(mr_flag, 
cache->surf_per_mat_tris[i], MR_DATATYPE_LOOP | MR_DATATYPE_POLY | 
MR_DATATYPE_LOOPTRI);
        }
 
        DRW_ADD_FLAG_FROM_VBO_REQUEST(mr_edit_flag, cache->edit.data, 
MR_DATATYPE_VERT | MR_DATATYPE_EDGE | MR_DATATYPE_LOOP | MR_DATATYPE_LOOPTRI | 
MR_DATATYPE_POLY | MR_DATATYPE_OVERLAY);

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
https://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to