wslua: don't crash if disable_lua = true in init.lua

in wslua_init(), our lua instance L is set to NULL if
disable_lua is true in init.lua
make sure that we leave wslua_init() in this case

if we don't, we crash in lua_pop(L,1); with L==NULL

Program received signal SIGSEGV, Segmentation fault.
0x00007fffefb41a73 in lua_settop () from /usr/lib/x86_64-linux-gnu/liblua5.1.so.0
(gdb) bt
 #0  0x00007fffefb41a73 in lua_settop () from /usr/lib/x86_64-linux-gnu/liblua5.1.so.0
 #1  0x00007ffff4fb50e4 in wslua_init (cb=cb@entry=0x516f40 <splash_update(register_action_e, char const*, void*)>,
    client_data=client_data@entry=0x0) at init_wslua.c:900
 [...]

Bug:12196
Change-Id: Ic338c4edcb897c0eaa9b6755bbb6c9991ec6ed02
Reviewed-on: https://code.wireshark.org/review/14228
Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
This commit is contained in:
Martin Kaiser 2016-02-28 17:53:52 +01:00 committed by Stig Bjørlykke
parent 1a716800e3
commit ddcafa06df
1 changed files with 1 additions and 0 deletions

View File

@ -896,6 +896,7 @@ void wslua_init(register_cb cb, gpointer client_data) {
lua_close(L);
L = NULL;
first_time = FALSE;
return;
}
lua_pop(L,1); /* pop the getglobal result */