commit 6be9c358b64f45604a9875c25d56df66e30cd0e0
parent 76efa9c8e2723d16201ef21298e1c87974e3d142
Author: vaplv <vaplv@free.fr>
Date: Sat, 5 Jul 2014 23:35:26 +0200
Fix wrong assertions
Diffstat:
2 files changed, 6 insertions(+), 4 deletions(-)
diff --git a/src/obj.c b/src/obj.c
@@ -152,7 +152,7 @@ flush_groups(struct obj* obj)
FOR_EACH(obj->igroups_active, obj->igroups_active, ngrps) {
struct named_group* grp;
grp = darray_named_group_data_get(&obj->groups) + obj->igroups_active;
- ASSERT(grp->iface < nfaces);
+ ASSERT(grp->iface <= nfaces);
grp->nfaces = nfaces - grp->iface;
}
}
@@ -168,7 +168,7 @@ flush_usemtl(struct obj* obj)
if(0 == (ngrps = darray_named_group_size_get(&obj->usemtls)))
return;
mtl = darray_named_group_data_get(&obj->usemtls) + (ngrps - 1);
- ASSERT(mtl->iface < nfaces);
+ ASSERT(mtl->iface <= nfaces);
mtl->nfaces = nfaces - mtl->iface;
}
@@ -183,7 +183,7 @@ flush_smooth_group(struct obj* obj)
if(0 == (ngrps = darray_smooth_group_size_get(&obj->smooth_groups)))
return;
grp = darray_smooth_group_data_get(&obj->smooth_groups) + (ngrps - 1);
- ASSERT(grp->face_id < nfaces);
+ ASSERT(grp->face_id <= nfaces);
grp->faces_count = nfaces - grp->face_id;
}
diff --git a/src/test_obj.c b/src/test_obj.c
@@ -308,7 +308,7 @@ main(int argc, char** argv)
{
struct mem_allocator allocator;
struct obj* obj;
- (void)argc, (void)argv;
+ int i;
mem_init_proxy_allocator(&allocator, &mem_default_allocator);
@@ -327,6 +327,8 @@ main(int argc, char** argv)
test_plane(obj);
test_squares(obj);
test_cube(obj);
+ FOR_EACH(i, 1, argc)
+ CHECK(obj_load(obj, argv[i]), OBJ_OK);
CHECK(obj_ref_put(obj), OBJ_OK);