[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index]
[Thread Index]
- Subject: Re: tolua potential memory leak?
- From: David Given <dg@...>
- Date: Thu, 24 Feb 2005 20:08:29 +0000
On Thursday 24 February 2005 17:07, Fabian Peña wrote:
> please see this C code
[...]
> Tthat it happens to the memory assigned in strdup? Memory Leak ?
Yes.
lua_pushstring takes its own copy of the string, which means that it's your
responsibility to free the string returned by getSome() once you've done with
it.
int tolua_getSome(lua_State* L)
{
const char* s = getSome();
lua_pushstring(L, s);
free(s);
return 1;
};
(BTW, I notice your code calls tolua_pushstring(), not lua_pushstring()... I
don't know whether that's a typo or if you're using the tolua library, which
I have no experience of. If so, tolua_pushstring() might have different
semantics.)
--
"Curses! Foiled by the chilled dairy treats of righteousness!" --- Earthworm
Jim (evil)