[Adding back the list - I accidentally hit "reply" instead of "reply all" in 
previous email]

On Friday, February 22, 2013 01:38:51 PM Daniel Veillard wrote:
> [sending again since mail was apparently lost]
> 
> On Thu, Feb 21, 2013 at 10:21:18AM -0800, Alexey Neyman wrote:
> > On Thursday, February 21, 2013 04:01:45 PM you wrote:
> > > On Wed, Feb 20, 2013 at 06:28:25PM -0800, Alexey Neyman wrote:
> > > > Hi libxml developers,
> > > > 
> > > > [BTW, is this list alive?]
> > > > 
> > >   yes, why ?
> > 
> > I've sent another patch 3 days ago, and there was no response at all. Here
> > it is:
> > 
> > https://mail.gnome.org/archives/xml/2013-February/msg00013.html
> 
>   yep, I saw it, but it's more complex, I'm worried about what happens
> if there is some kind of deallocation like calling popInputCallbacks()
> from the python bindings themselves, while said input is still in use
> by a parser, I smell some reference counting would have to be added to
> take care of this, i.e. the single
>   Py_INCREF(pythonInputOpenCallbackObject);
> on registration may not be sufficient to cover that case. The problem
> is that the new use is done directly from C and there is no mechanism we
> can use to increment/decrement the counter when a parser creates an
> input based on those callbacks.

I see your point... If I understand it correctly, I need to increment the 
refcount each time open callback succeeds (i.e. in pythonInputOpenCallback(), 
when the return value is not Py_None) and decrement it whenever the close 
callback is called (i.e., wrap xmlPythonFileCloseRaw() into a new function, 
pythonInputCloseCallback()).

Am I missing anything?

> So i'm afraid we are stuck with a known
> problem we can't fix, unless we never release the python reference,
> which creates a leak (but a leak is better than a crash)
>
>   in any case tests suite addition would be welcome, yes :-)

Yes, I just wanted to first settle on the API for the binding :)

Regards,
Alexey.
_______________________________________________
xml mailing list, project page  http://xmlsoft.org/
xml@gnome.org
https://mail.gnome.org/mailman/listinfo/xml

Reply via email to