Endless loop in Arbiter.Equals() method

Topics: User Forum
Dec 12, 2006 at 8:59 PM
I think I discovered a problem: In Arbiter.cs, Line 236, Farseer ran into an endless loop for me. It appeared as if the Equals() method would somehow be reentered again and again.

> return (rigidBodyA == other.rigidBodyA) && (rigidBodyB == other.rigidBodyB);

I tried replacing above piece of code with the following one

> public bool Equals(Arbiter other) {
> return ReferenceEquals(rigidBodyA, other.rigidBodyA) &&
> ReferenceEquals(rigidBodyB, other.rigidBodyB);
> }

and the loop was solved, but then the simulation kept getting slower and slower with each frame. This might however be related to the NaN problem I reported before. I'll provide a more detailed description of the involved methods when it happens again :)

Dec 12, 2006 at 9:01 PM
Oops, sorry, forget this post. My fault! :P
Dec 12, 2006 at 9:45 PM
Post Forgotton! :-)