From 25945dc5395a03cab069ff0e6470ba8d59b03978 Mon Sep 17 00:00:00 2001 From: kwolekr Date: Sat, 29 Nov 2014 16:50:18 -0500 Subject: noise: Throw exception on noise allocation failure --- src/script/lua_api/l_noise.cpp | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'src/script/lua_api/l_noise.cpp') diff --git a/src/script/lua_api/l_noise.cpp b/src/script/lua_api/l_noise.cpp index 4f230b76e..96ed93643 100644 --- a/src/script/lua_api/l_noise.cpp +++ b/src/script/lua_api/l_noise.cpp @@ -171,7 +171,7 @@ int LuaPerlinNoiseMap::l_get2dMap_flat(lua_State *L) n->perlinMap2D(p.X, p.Y); int maplen = n->sx * n->sy; - + lua_newtable(L); for (int i = 0; i != maplen; i++) { float noiseval = n->np->offset + n->np->scale * n->result[i]; @@ -220,7 +220,7 @@ int LuaPerlinNoiseMap::l_get3dMap_flat(lua_State *L) int maplen = n->sx * n->sy * n->sz; - + lua_newtable(L); for (int i = 0; i != maplen; i++) { float noiseval = n->np->offset + n->np->scale * n->result[i]; @@ -231,7 +231,11 @@ int LuaPerlinNoiseMap::l_get3dMap_flat(lua_State *L) } LuaPerlinNoiseMap::LuaPerlinNoiseMap(NoiseParams *np, int seed, v3s16 size) { - noise = new Noise(np, seed, size.X, size.Y, size.Z); + try { + noise = new Noise(np, seed, size.X, size.Y, size.Z); + } catch (InvalidNoiseParamsException &e) { + throw LuaError(e.what()); + } } LuaPerlinNoiseMap::~LuaPerlinNoiseMap() -- cgit v1.2.3