Fix for https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=2453
The patch fixes the problem by extending the original "outstanding stuff"
approach.
Now the pointer itself won't be NULLified, instead we track the pointers with
their expiry state in structs in the outstanding_stuff list.
The Lua objects refers to those structs instead of the actual pointers and
checks the expiry state of the pointers before accessing them.
The pointers are marked expired when the dissection of the frame is finished
and the allocated struct is freed by Lua's garbage collector.
If the garbage collector hits the struct when it holds a not expired pointer,
it marks it as expired (that means we don't have any object in Lua referring to
the pointer) and the struct will be freed at the end of the dissection of the
frame.
this is for the 1.0 branch
svn path=/trunk/; revision=25845
- Change ugly GLIB version checking statements to GLIB_CHECK_VERSION
- Remove ws_strsplit files because we no longer need to borrow GLIB2's
g_strsplit code for the no longer supported GLIB1 builds
svn path=/trunk/; revision=24829
The attached patch adds ability of of creating radio button, drop-down
list and range type preference entries to the Lua plugin.
It also fixes a lua compile warning/error in wslua_gui.c.
The patch is written by Tamas Regos, he asked me to send it to the list.
svn path=/trunk/; revision=21655
- remove data_ref where it is not used anymore (callbacks won't pass userdata as this ius better done using lua's closures)
- have TextWindow:set_editable() using its argument
- add wslua_optbool(L,n,d) to pull an optional boolean from the stack
- several fixes to docbook generation (now it compiles!)
svn path=/trunk/; revision=19608
- do not #include a c code file in wslua_register.c compile a separate boject
- add the console and evaluate windows
- add some useful vars to the lua environment
- some cleanup
- add the dtd generator code (currently disabled)
svn path=/trunk/; revision=19579