If current vector is within EPSILON, it would return the current, when logically the target should be returned instead.
@@ -101,7 +101,7 @@ void calc_torque(struct vec3 *dst, const struct vec3 *v1, const struct vec3 *v2,
float orig_dist, torque_dist, adjust_dist;
if (vec3_close(v1, v2, EPSILON)) {
- vec3_copy(dst, v1);
+ vec3_copy(dst, v2);
return;
}