diff options
| author | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2018-02-27 17:01:55 -0300 |
|---|---|---|
| committer | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2018-02-27 17:01:55 -0300 |
| commit | fbea553ca291eb2f8a7bbd361403639af52fac96 (patch) | |
| tree | f34fba36b8c03489ef68a5e4541ac6964f60b595 | |
| parent | 34b00c16e28c2bbc3e633b4007de956130905ed6 (diff) | |
| download | lua-fbea553ca291eb2f8a7bbd361403639af52fac96.tar.gz lua-fbea553ca291eb2f8a7bbd361403639af52fac96.tar.bz2 lua-fbea553ca291eb2f8a7bbd361403639af52fac96.zip | |
'lua_setiuservalue' removes value from the stack even in case of error
| -rw-r--r-- | lapi.c | 4 |
1 files changed, 2 insertions, 2 deletions
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | ** $Id: lapi.c,v 2.288 2018/02/26 14:16:05 roberto Exp roberto $ | 2 | ** $Id: lapi.c,v 2.289 2018/02/27 17:48:28 roberto Exp roberto $ |
| 3 | ** Lua API | 3 | ** Lua API |
| 4 | ** See Copyright Notice in lua.h | 4 | ** See Copyright Notice in lua.h |
| 5 | */ | 5 | */ |
| @@ -953,9 +953,9 @@ LUA_API int lua_setiuservalue (lua_State *L, int idx, int n) { | |||
| 953 | else { | 953 | else { |
| 954 | setobj(L, &uvalue(o)->uv[n - 1].uv, s2v(L->top - 1)); | 954 | setobj(L, &uvalue(o)->uv[n - 1].uv, s2v(L->top - 1)); |
| 955 | luaC_barrierback(L, gcvalue(o), s2v(L->top - 1)); | 955 | luaC_barrierback(L, gcvalue(o), s2v(L->top - 1)); |
| 956 | L->top--; | ||
| 957 | res = 1; | 956 | res = 1; |
| 958 | } | 957 | } |
| 958 | L->top--; | ||
| 959 | lua_unlock(L); | 959 | lua_unlock(L); |
| 960 | return res; | 960 | return res; |
| 961 | } | 961 | } |
