summaryrefslogtreecommitdiffstats
path: root/libdimension/prtree.c
diff options
context:
space:
mode:
authorTavian Barnes <tavianator@gmail.com>2011-06-12 02:37:51 -0600
committerTavian Barnes <tavianator@gmail.com>2011-06-13 00:16:06 -0600
commit7acd8ea6673b7a90ed4041408ccf1b024b8a007a (patch)
treed52199dd7c58e0217bfd1a74e7601d739ad333f5 /libdimension/prtree.c
parent066261810c2fca192677c5c1c01c91d6ecec65a0 (diff)
downloaddimension-7acd8ea6673b7a90ed4041408ccf1b024b8a007a.tar.xz
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.
Diffstat (limited to 'libdimension/prtree.c')
-rw-r--r--libdimension/prtree.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/libdimension/prtree.c b/libdimension/prtree.c
index 2d8acc4..06cecf9 100644
--- a/libdimension/prtree.c
+++ b/libdimension/prtree.c
@@ -349,12 +349,12 @@ dmnsn_make_prtree(const dmnsn_array *objects)
static void
dmnsn_split_add_object(dmnsn_array *objects, const dmnsn_object *object)
{
- if (dmnsn_array_size(object->children) == 0) {
- dmnsn_array_push(objects, &object);
- } else {
+ if (object->split_children) {
DMNSN_ARRAY_FOREACH (const dmnsn_object **, child, object->children) {
dmnsn_split_add_object(objects, *child);
}
+ } else {
+ dmnsn_array_push(objects, &object);
}
}