Update of /cvsroot/wxlua/wxLua/bindings/wxwidgets
In directory sc8-pr-cvs9.sourceforge.net:/tmp/cvs-serv11381/wxLua/bindings/wxwidgets
Modified Files:
wxbase_override.hpp wxcore_override.hpp
Log Message:
Second try at really allowing pushing the same object, but with different tags
by tracking the userdata and have it fully clean up after itself.
Index: wxbase_override.hpp
===================================================================
RCS file: /cvsroot/wxlua/wxLua/bindings/wxwidgets/wxbase_override.hpp,v
retrieving revision 1.10
retrieving revision 1.11
diff -C2 -d -r1.10 -r1.11
*** wxbase_override.hpp 13 Dec 2007 00:47:48 -0000 1.10
--- wxbase_override.hpp 13 Dec 2007 06:23:53 -0000 1.11
***************
*** 166,170 ****
// we may not be tracked, but delete us anyway
! if (!wxluaO_deletegcobject(L, self, wxLUA_DELETE_REMOVE_OBJECT))
delete self;
--- 166,170 ----
// we may not be tracked, but delete us anyway
! if (!wxluaO_deletegcobject(L, lua_touserdata(L, 1), self, WXLUA_DELETE_OBJECT_ALL))
delete self;
Index: wxcore_override.hpp
===================================================================
RCS file: /cvsroot/wxlua/wxLua/bindings/wxwidgets/wxcore_override.hpp,v
retrieving revision 1.10
retrieving revision 1.11
diff -C2 -d -r1.10 -r1.11
*** wxcore_override.hpp 13 Dec 2007 00:47:48 -0000 1.10
--- wxcore_override.hpp 13 Dec 2007 06:23:53 -0000 1.11
***************
*** 2354,2359 ****
// we must disconnect them from our tracking list
if (printoutForPrinting != NULL)
! wxluaO_deletegcobject(L, printoutForPrinting, wxLUA_UNDELETE_OBJECT);
! wxluaO_deletegcobject(L, printout, wxLUA_UNDELETE_OBJECT);
// call constructor
--- 2354,2359 ----
// we must disconnect them from our tracking list
if (printoutForPrinting != NULL)
! wxluaO_undeletegcobject(L, printoutForPrinting);
! wxluaO_undeletegcobject(L, printout);
// call constructor
|