lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]



On 21-May-06, at 4:16 PM, David Jones wrote:


On May 21, 2006, at 19:52, Cyril Zorin wrote:

Hullo!

Say I have two functions, one Lua function called MyLuaFunc, and a C function called my_c_func(). Now, suppose that MyLuaFunc calls my_c_func() -- is there a way, from inside my_c_func() to make it so the Lua VM returns from MyLuaFunc right after my_c_func() is done? In other words

-- some code
my_c_func()
-- I want my_c_func() to tell the Lua VM to return from MyLuaFunc right after my_c_func() returns
-- more code

Is there a way to do this?

Use setjmp in MyLuaFunc and longjmp in _c_func. Can't say I recommend it though. It would be simpler to just have _c_func return some value to MyLuaFunc that indicated that it wanted an immediate return to Lua.

Unfortunately I have no control over the Lua code. I'm just implementing the C stubs, and there's a stub that requires that a Lua function returns after the C stub returns.


David Jones