From 2952ed764d28cea103962297d968a01777e0c4ca Mon Sep 17 00:00:00 2001 From: bjorn Date: Sun, 7 Apr 2024 15:22:06 -0700 Subject: [PATCH] Fix issue with Collider:getJoints; This can probably be simplified somehow... --- src/modules/physics/physics_jolt.c | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/src/modules/physics/physics_jolt.c b/src/modules/physics/physics_jolt.c index 78fcd398..27b821a5 100644 --- a/src/modules/physics/physics_jolt.c +++ b/src/modules/physics/physics_jolt.c @@ -516,13 +516,15 @@ void lovrColliderSetShapeOffset(Collider* collider, float* position, float* orie } Joint* lovrColliderEnumerateJoints(Collider* collider, Joint* joint, void** private) { - if (joint) { - JointNode* node = *private; - *private = &node->next; - return node->next->joint; + if (!joint) { + JointNode* node = collider->joints; + *private = collider->joints; + return node ? node->joint : NULL; } else { - *private = &collider->joints; - return collider->joints->joint; + JointNode* node = *private; + node = node ? node->next : NULL; + *private = node; + return node ? node->joint : NULL; } }