Re: [gdome]cvs version segfault: unref doc before element



On Sun, 28 Oct 2001, T.J. Mather wrote:

> I've run into a problem with the new memory management functions.

> If the doc_unref line comes after the el_unref line instead of before,
> then the program works properly.
>
> I'm not sure if this is a feature request or a bug report, but it would be
> handy to be able to decrement the ref counts in any order.

This is a serious bug, of course, and a bad bad bad one. It makes the
whole new memory management implementation useless. I hope Paolo can fix
it easily.

I ran the program in the debugger and could not find the cause of the
problem. Paolo, if you can describe the design of the current memory
management implementation, I may be able to help nailing it down.

This code from gdome_treegc_delRef looks strange, but it is not the cause
of the problem:
---------------------------------
    ownerDoc = NULL;
    xml_ownerDoc->_private = NULL;

#ifdef DEBUG_REFCNT
    gdome_refdbg_delRef ((void *)ownerDoc, GDOME_REFDBG_NODE);
#endif
    g_free (ownerDoc);
---------------------------------

Bye, Tobias





[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]