From 7acd8ea6673b7a90ed4041408ccf1b024b8a007a Mon Sep 17 00:00:00 2001 From: Tavian Barnes Date: Sun, 12 Jun 2011 02:37:51 -0600 Subject: Vast libdimension API and internals improvements. Couldn't really do these while I was trying to be POV-Ray compatible, 'cause they would've broken compatibility. --- libdimension/bench/prtree.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) (limited to 'libdimension/bench/prtree.c') diff --git a/libdimension/bench/prtree.c b/libdimension/bench/prtree.c index b6f778a..05fc1ce 100644 --- a/libdimension/bench/prtree.c +++ b/libdimension/bench/prtree.c @@ -76,8 +76,12 @@ main(void) } dmnsn_array *objects = dmnsn_new_array(sizeof(dmnsn_object *)); + dmnsn_texture *texture = dmnsn_new_texture(); + texture->pigment = dmnsn_new_pigment(); for (size_t i = 0; i < nobjects; ++i) { dmnsn_object *object = dmnsn_new_fake_object(); + object->texture = texture; + DMNSN_INCREF(object->texture); dmnsn_initialize_object(object); dmnsn_array_push(objects, &object); } @@ -108,12 +112,10 @@ main(void) /* Cleanup */ dmnsn_delete_prtree(tree); - for (size_t i = 0; i < nobjects; ++i) { - dmnsn_object *object; - dmnsn_array_get(objects, i, &object); - dmnsn_delete_object(object); + DMNSN_ARRAY_FOREACH (dmnsn_object **, object, objects) { + dmnsn_delete_object(*object); } - + dmnsn_delete_texture(texture); dmnsn_delete_array(objects); return EXIT_SUCCESS; } -- cgit v1.2.3