Skip to content

Commit

Permalink
Check minetest.hud_change() parameters on conversion (Fix #1714)
Browse files Browse the repository at this point in the history
  • Loading branch information
kwolekr committed Oct 30, 2014
1 parent 6c9bbb0 commit 03f3f95
Showing 1 changed file with 7 additions and 7 deletions.
14 changes: 7 additions & 7 deletions src/script/lua_api/l_object.cpp
Expand Up @@ -970,14 +970,14 @@ int ObjectRef::l_hud_change(lua_State *L)
if (player == NULL)
return 0;

u32 id = !lua_isnil(L, 2) ? lua_tonumber(L, 2) : -1;
u32 id = lua_isnumber(L, 2) ? lua_tonumber(L, 2) : -1;

HudElement *e = player->getHud(id);
if (!e)
return 0;

HudElementStat stat = HUD_STAT_NUMBER;
if (!lua_isnil(L, 3)) {
if (lua_isstring(L, 3)) {
int statint;
std::string statstr = lua_tostring(L, 3);
stat = string_to_enum(es_HudElementStat, statint, statstr) ?
Expand All @@ -991,27 +991,27 @@ int ObjectRef::l_hud_change(lua_State *L)
value = &e->pos;
break;
case HUD_STAT_NAME:
e->name = lua_tostring(L, 4);
e->name = luaL_checkstring(L, 4);
value = &e->name;
break;
case HUD_STAT_SCALE:
e->scale = read_v2f(L, 4);
value = &e->scale;
break;
case HUD_STAT_TEXT:
e->text = lua_tostring(L, 4);
e->text = luaL_checkstring(L, 4);
value = &e->text;
break;
case HUD_STAT_NUMBER:
e->number = lua_tonumber(L, 4);
e->number = luaL_checknumber(L, 4);
value = &e->number;
break;
case HUD_STAT_ITEM:
e->item = lua_tonumber(L, 4);
e->item = luaL_checknumber(L, 4);
value = &e->item;
break;
case HUD_STAT_DIR:
e->dir = lua_tonumber(L, 4);
e->dir = luaL_checknumber(L, 4);
value = &e->dir;
break;
case HUD_STAT_ALIGN:
Expand Down

0 comments on commit 03f3f95

Please sign in to comment.