From: Marcelo M. <mm...@ac...> - 2006-03-14 01:51:57
|
Olly Betts wrote: >On Mon, Mar 13, 2006 at 06:02:34PM -0700, Marcelo Matus wrote: > > >>>It appears that -dirvtable is incompatible with Python 2.1 because it >>>generates (or at least can generate) calls to PyObject_Call >>>which Python 2.1 doesn't have. But there's no #error for that one. >>> >>> >>what swig version are you using, there is no PyObject_Call in swig-CVS >>when using -nomodern... or how are you calling swig? >> >> > >1.3.28. Or at least that's what "swig -version" says, and I try to only >install release versions on that box (since it builds Xapian SVN >snapshots and releases). That's the only box that has Python 2.1 >though... > >I've just looked at the generated code from SWIG CVS and this appears to >be fixed. Cool. > >However I think there's some dead code now (perhaps a memory leak too): > >#if defined(SWIG_PYTHON_DIRECTOR_VTABLE) > const size_t swig_method_index = 0; > const char * const swig_method_name = "get_description"; > PyObject* method = swig_get_method(swig_method_index, swig_method_name); > swig::PyObject_var args = PyTuple_New(0); > swig::PyObject_var result = PyObject_CallFunction(method, NULL, NULL); >#else > swig::PyObject_var result = PyObject_CallMethod(swig_get_self(), (char *) "get_description", NULL); >#endif > > > yes, is a dead code but not a memory leak since PyObject_var is like auto_ptr, ie, it deletes the object when the scope finish. I'll fix it anyway, thanks. Marcelo >In the first branch of the "#if", args isn't used (nor in the rest of >the function). In the code with the PyObject_Call which 1.3.28 produced >args was passed to PyObject_Call so I suspect it's just a hangover from >that version. > >Let me know if it would be useful to have a smallish example to demonstrate >this and I'll try to trim down my .i file to produce one. > >Cheers, > Olly > > >------------------------------------------------------- >This SF.Net email is sponsored by xPML, a groundbreaking scripting language >that extends applications into web and mobile media. Attend the live webcast >and join the prime developer group breaking into this new coding territory! >http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642 >_______________________________________________ >Swig-devel mailing list >Swi...@li... >https://lists.sourceforge.net/lists/listinfo/swig-devel > > |