Re: [xml] redicting parts of trees



On Mon, Jun 27, 2005 at 10:44:44AM -0400, Rob Richards wrote:
Kasimier Buchcik wrote:


The context has just an initial "void * _private" field, to be able to
extend it. Adding fields to it, at the end, won't break ABI
compatibility.


How do you not break compatibility? For example, A new field is added, 
which if not NULL would cause the execution of some function while 
inside the adopt node function. If someone where to create a context 
structure, without using some initialization function, then a crash most 
likely would occur as the field is not initialized to NULL.

  If you have code compiled against libxml2-2.6.21 but using libxnl2-2.6.20 
you have no hard garantee. The ABI garantees are only forward, never backward.
The structure won't shrink. Adding allocation/deallocation functions can
limit risks.

Daniel

-- 
Daniel Veillard      | Red Hat Desktop team http://redhat.com/
veillard redhat com  | libxml GNOME XML XSLT toolkit  http://xmlsoft.org/
http://veillard.com/ | Rpmfind RPM search engine http://rpmfind.net/



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