On Wed, Feb 10, 2016 at 5:07 AM, Martin Phillips
<martinphill...@ladybridge.com> wrote:
> I am writing a Python wrapper to go around a C library. I have encountered a 
> problem that I have been unable to resolve with
> countless web searches.
>
>
>
> Several functions in the C library return pointers to dynamically allocated 
> w_char null terminated strings. I need to copy the
> string to a Python variable and call an existing library function that will 
> free the dynamically allocate memory.
>
>
>
> My test code for this is
>
>
>
> def Test(fno, item):
>
>     func = mylib. MyFunc
>
>     func.restype = ct.c_void_p
>
>     s = func(fno, item)
>
>     result = s
>
>     mylib.free(s)
>
>     return result
>
>
>
> The problem is with the line that sets the result variable. I need this to 
> make a copy of the dynamically allocated string, not the
> pointer to it.

Does ctypes.wstring_at(s) do what you want?
-- 
https://mail.python.org/mailman/listinfo/python-list

Reply via email to