From: Bram Moolenaar Date: Thu, 12 Aug 2010 20:14:01 +0000 (+0200) Subject: Fix: Lua interface tried to load the library when closing a buffer or window. X-Git-Tag: v7.3~29 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=2bd6a1b54225a49e1b446201c7143cc766a7cf19;p=vim Fix: Lua interface tried to load the library when closing a buffer or window. --- diff --git a/src/if_lua.c b/src/if_lua.c index 21f66e9bf..35ee3002c 100644 --- a/src/if_lua.c +++ b/src/if_lua.c @@ -1122,6 +1122,12 @@ luaV_setrange(lua_State *L, int line1, int line2) static lua_State *L = NULL; + static int +lua_is_open(void) +{ + return L != NULL; +} + static int lua_init(void) { @@ -1240,7 +1246,7 @@ ex_luafile(exarg_T *eap) void lua_buffer_free(buf_T *buf) { - if (lua_init() == FAIL) return; + if (!lua_is_open()) return; luaV_getfield(L, LUAVIM_FREE); lua_pushlightuserdata(L, (void *) buf); lua_call(L, 1, 0); @@ -1250,7 +1256,7 @@ lua_buffer_free(buf_T *buf) void lua_window_free(win_T *win) { - if (lua_init() == FAIL) return; + if (!lua_is_open()) return; luaV_getfield(L, LUAVIM_FREE); lua_pushlightuserdata(L, (void *) win); lua_call(L, 1, 0);