From 735c52b228a52413c4be00245aa38dc3b5942c18 Mon Sep 17 00:00:00 2001 From: Bill Meltsner Date: Sun, 2 Oct 2011 09:33:42 -0400 Subject: [PATCH] make love.physics.setMeter error on invalid meters (anything less than 1) --HG-- branch : box2d-update --- src/modules/physics/box2d/Physics.cpp | 1 + src/modules/physics/box2d/wrap_Physics.cpp | 6 +++++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/modules/physics/box2d/Physics.cpp b/src/modules/physics/box2d/Physics.cpp index 7ba45f241..37aa766a0 100644 --- a/src/modules/physics/box2d/Physics.cpp +++ b/src/modules/physics/box2d/Physics.cpp @@ -234,6 +234,7 @@ namespace box2d void Physics::setMeter(int meter) { + if (meter < 1) throw love::Exception("Physics error: invalid meter"); Physics::meter = meter; } diff --git a/src/modules/physics/box2d/wrap_Physics.cpp b/src/modules/physics/box2d/wrap_Physics.cpp index 0d7f409bc..b1af0a61d 100644 --- a/src/modules/physics/box2d/wrap_Physics.cpp +++ b/src/modules/physics/box2d/wrap_Physics.cpp @@ -304,7 +304,11 @@ namespace box2d int w_setMeter(lua_State * L) { int arg1 = luaL_checkint(L, 1); - Physics::setMeter(arg1); + try { + Physics::setMeter(arg1); + } catch (love::Exception e) { + return luaL_error(L, e.what()); + } return 0; }