diff options
Diffstat (limited to 'ext/xml/expat_compat.h')
| -rw-r--r-- | ext/xml/expat_compat.h | 8 | 
1 files changed, 8 insertions, 0 deletions
diff --git a/ext/xml/expat_compat.h b/ext/xml/expat_compat.h index 1ece0bd608..9b38caa1dc 100644 --- a/ext/xml/expat_compat.h +++ b/ext/xml/expat_compat.h @@ -43,6 +43,12 @@ typedef int  (*XML_ExternalEntityRefHandler)(void *, const XML_Char *, const XML  typedef void (*XML_StartNamespaceDeclHandler)(void *, const XML_Char *, const XML_Char *);  typedef void (*XML_EndNamespaceDeclHandler)(void *, const XML_Char *); +typedef struct _XML_Memory_Handling_Suite { +  void *(*malloc_fcn)(size_t size); +  void *(*realloc_fcn)(void *ptr, size_t size); +  void (*free_fcn)(void *ptr); +} XML_Memory_Handling_Suite; +  typedef struct _XML_Parser {  	int namespace; @@ -62,10 +68,12 @@ typedef struct _XML_Parser {  	XML_ExternalEntityRefHandler     h_external_entity_ref;  	XML_StartNamespaceDeclHandler    h_start_ns;  	XML_EndNamespaceDeclHandler      h_end_ns; +	XML_Memory_Handling_Suite        mem_hdlrs;  } *XML_Parser;  XML_Parser XML_ParserCreate(const XML_Char *);  XML_Parser XML_ParserCreateNS(const XML_Char *, const XML_Char); +XML_ParserCreate_MM(const XML_Char *, const XML_Memory_Handling_Suite *, const XML_Char *);  void XML_SetUserData(XML_Parser, void *);  void *XML_GetUserData(XML_Parser);  void XML_SetElementHandler(XML_Parser, XML_StartElementHandler, XML_EndElementHandler);  | 
