commit 3546aba57689b7d9fdc4f2083c8b52e50edcbe89
parent 0ae0361fb73338bfe75d74b7f474b6378c2deb18
Author: Christophe Coustet <christophe.coustet@meso-star.com>
Date: Fri, 22 Nov 2019 16:44:59 +0100
BugFix: wrong management of add callback returning an error
Diffstat:
1 file changed, 4 insertions(+), 5 deletions(-)
diff --git a/src/senc_scene.c b/src/senc_scene.c
@@ -294,17 +294,16 @@ senc_scene_add_geometry
} else {
/* New triangle */
trg_id_t u = scn->nutris + actual_nutris;
- ASSERT(u == htable_trg_size_get(&scn->unique_triangles));
- OK(htable_trg_set(&scn->unique_triangles, &trg_key, &u));
+ if (add_triangle)
+ OK(add_triangle(tmp.global_id, i, ctx));
OK(darray_triangle_in_push_back(&scn->triangles_in, &tmp));
range_adjust_ptr = darray_triangle_in_data_get(&scn->triangles_in) + u;
FOR_EACH(j, 0, 2) {
if(tmp.medium[j] != SENC_UNDEFINED_MEDIUM)
scn->sides_with_defined_medium_count++;
}
- if(add_triangle) {
- OK(add_triangle(tmp.global_id, i, ctx));
- }
+ ASSERT(u == htable_trg_size_get(&scn->unique_triangles));
+ OK(htable_trg_set(&scn->unique_triangles, &trg_key, &u));
++actual_nutris;
}
if(range_adjust_ptr) {