diff --git a/src/mission.c b/src/mission.c index 32ac0b7..889d706 100644 --- a/src/mission.c +++ b/src/mission.c @@ -160,6 +160,7 @@ static int mission_alreadyRunning(MissionData* misn) { /* Is the lua condition for misn met? */ static lua_State* mission_cond_L = NULL; static int mission_meetCond(MissionData* misn) { + int b; int ret; char buf[256]; @@ -201,8 +202,11 @@ static int mission_meetCond(MissionData* misn) { break; } + /* Check the result. */ if(lua_isboolean(mission_cond_L, -1)) { - if(lua_toboolean(mission_cond_L, -1)) + b = lua_toboolean(mission_cond_L, -1); + lua_pop(mission_cond_L, 1); + if(b) return 1; else return 0;