[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index]
[Thread Index]
- Subject: Re: lua_load modifies the stack
- From: Marc Balmer <marc@...>
- Date: Fri, 22 Apr 2011 15:56:21 +0200
Am 22.04.11 15:35, schrieb Peter Cawley:
> On Fri, Apr 22, 2011 at 2:33 PM, Marc Balmer <marc@msys.ch> wrote:
>> I have a table on the stack, then I call lua_load() to load a function.
>> After lua_load() completes without an error, I have a function on top
>> of the stack. But my table, which should now be at position -2, is
>> gone. There is a nil value there.
>>
>> Hwo can that happen? Is that some memory corruption in my lua_Reader
>> function or are there situations where lua_load() modifies the stack in
>> such a way?
>
> What is your reader function doing? It shares the view of the stack
> with the caller of lua_load, it doesn't get its own stack frame.
The lua_Reader function does not touch the stack, it merely returns Lua
source code piece by piece from a static buffer.