Re: Crash in wrapper_base.cpp
Drew McLean <[email protected]> Sat, 9 Jul 2011 16:44:07 -0700
| Newsgroups | gmane.comp.lang.lua.bind.user |
|---|---|
| Message-ID | <CAGo0s8OWpz_Fk7V9iuxY7KemaN50KEcZ5wtYP4AjUuFR6W9Rtw@mail.gmail.com> |
Ooops, seems like I messed up my previous runs of your sample code somehow.
I do indeed have different results for the different runs and have attached
them for you. I expect that they'll be the same as yours. For reference,
I'm using Visual Studio 2008 on Windows 7 x64 but I'm building a 32 bit
binary.
More importantly though, I have come across 2 interesting observations.
I've been tinkering with your code and also the code in my engine and have
found a possible workaround.
First, in my engine, if I simply add the following push of self onto the
stack before calling the lua function then no crash!
lua_State *L = m_self.state();
m_self.get(L);
call<void>("overide");
I find it weird that it didn't cause a stack overflow but I tried it many
times and let it run for a long time with no observed side effects other
than it seeming to be working correctly.
The second observation is that when I put the extra push of self onto the
stack into your sample code before calling overide() it caused an assert.
After digging around I saw that you didn't provide a constructor for your
lua class. Adding that in made the assert go away and also got rid of the
"Lua instance is nil" messages.
"function Item:__init(i)\n"
" print('lua constructor')\n"
"end\n"
So it seems we may have stumbled upon a workaround if it deems to have no
side effects although I'm not really comfortable with not knowing why it
works. Let me know what you find with your engine.
Drew
------------------------------------------------------------------------------
All of the data generated in your IT infrastructure is seriously valuable.
Why? It contains a definitive record of application performance, security
threats, fraudulent activity, and more. Splunk takes this data and makes
sense of it. IT sense. And common sense.
http://p.sf.net/sfu/splunk-d2d-c2
_______________________________________________
luabind-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/luabind-user