mirror of
https://github.com/love2d/love.git
synced 2026-08-16 08:11:02 +02:00
Error instead of crashing when a frequency of 0 is set on a MouseJoint. Resolves issue #1197.
--HG-- branch : minor
This commit is contained in:
@@ -25,6 +25,8 @@
|
||||
#include "World.h"
|
||||
#include "Physics.h"
|
||||
|
||||
#include <float.h>
|
||||
|
||||
namespace love
|
||||
{
|
||||
namespace physics
|
||||
@@ -78,6 +80,12 @@ float MouseJoint::getMaxForce() const
|
||||
|
||||
void MouseJoint::setFrequency(float hz)
|
||||
{
|
||||
// This is kind of a crappy check. The frequency is used in an internal
|
||||
// box2d calculation whose result must be > FLT_EPSILON, but other variables
|
||||
// go into that calculation...
|
||||
if (hz <= FLT_EPSILON * 2)
|
||||
throw love::Exception("MouseJoint frequency must be a positive number.");
|
||||
|
||||
joint->SetFrequency(hz);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user