[libxml2] Fix misc callback signatures



commit e5f33e56bafc332fd63f6643b687ebfe14bcba56
Author: Nick Wellnhofer <wellnhofer aevum de>
Date:   Thu Nov 9 17:29:22 2017 +0100

    Fix misc callback signatures
    
    Fix parameter and return types for xmlC14NIsVisibleCallback and
    xmlRegExecCallbacks.

 c14n.c       |    7 ++++---
 xmlschemas.c |   13 ++++++-------
 2 files changed, 10 insertions(+), 10 deletions(-)
---
diff --git a/c14n.c b/c14n.c
index b7cb7b0..a0f2c19 100644
--- a/c14n.c
+++ b/c14n.c
@@ -89,7 +89,7 @@ static int                    xmlExcC14NVisibleNsStackFind    (xmlC14NVisibleNsStackPtr cur,
                                                                 xmlNsPtr ns,
                                                                 xmlC14NCtxPtr ctx);
 
-static int                     xmlC14NIsNodeInNodeset          (xmlNodeSetPtr nodes,
+static int                     xmlC14NIsNodeInNodeset          (void *user_data,
                                                                 xmlNodePtr node,
                                                                 xmlNodePtr parent);
 
@@ -252,7 +252,8 @@ xmlC14NErr(xmlC14NCtxPtr ctxt, xmlNodePtr node, int error,
 #define XML_NAMESPACES_DEFAULT         16
 
 static int
-xmlC14NIsNodeInNodeset(xmlNodeSetPtr nodes, xmlNodePtr node, xmlNodePtr parent) {
+xmlC14NIsNodeInNodeset(void *user_data, xmlNodePtr node, xmlNodePtr parent) {
+    xmlNodeSetPtr nodes = (xmlNodeSetPtr) user_data;
     if((nodes != NULL) && (node != NULL)) {
        if(node->type != XML_NAMESPACE_DECL) {
            return(xmlXPathNodeSetContains(nodes, node));
@@ -1975,7 +1976,7 @@ xmlC14NDocSaveTo(xmlDocPtr doc, xmlNodeSetPtr nodes,
                  int mode, xmlChar ** inclusive_ns_prefixes,
                  int with_comments, xmlOutputBufferPtr buf) {
     return(xmlC14NExecute(doc,
-                       (xmlC14NIsVisibleCallback)xmlC14NIsNodeInNodeset,
+                       xmlC14NIsNodeInNodeset,
                        nodes,
                        mode,
                        inclusive_ns_prefixes,
diff --git a/xmlschemas.c b/xmlschemas.c
index f127460..97a4db7 100644
--- a/xmlschemas.c
+++ b/xmlschemas.c
@@ -25986,11 +25986,12 @@ xmlSchemaCheckCOSValidDefault(xmlSchemaValidCtxtPtr vctxt,
 }
 
 static void
-xmlSchemaVContentModelCallback(xmlSchemaValidCtxtPtr vctxt ATTRIBUTE_UNUSED,
+xmlSchemaVContentModelCallback(xmlRegExecCtxtPtr exec ATTRIBUTE_UNUSED,
                               const xmlChar * name ATTRIBUTE_UNUSED,
-                              xmlSchemaElementPtr item,
-                              xmlSchemaNodeInfoPtr inode)
+                              void *transdata, void *inputdata)
 {
+    xmlSchemaElementPtr item = (xmlSchemaElementPtr) transdata;
+    xmlSchemaNodeInfoPtr inode = (xmlSchemaNodeInfoPtr) inputdata;
     inode->decl = item;
 #ifdef DEBUG_CONTENT
     {
@@ -26095,8 +26096,7 @@ xmlSchemaValidatorPopElem(xmlSchemaValidCtxtPtr vctxt)
                */
                inode->regexCtxt =
                    xmlRegNewExecCtxt(inode->typeDef->contModel,
-                   (xmlRegExecCallbacks) xmlSchemaVContentModelCallback,
-                   vctxt);
+                   xmlSchemaVContentModelCallback, vctxt);
                if (inode->regexCtxt == NULL) {
                    VERROR_INT("xmlSchemaValidatorPopElem",
                        "failed to create a regex context");
@@ -26644,8 +26644,7 @@ xmlSchemaValidateChildElem(xmlSchemaValidCtxtPtr vctxt)
                * Create the regex context.
                */
                regexCtxt = xmlRegNewExecCtxt(ptype->contModel,
-                   (xmlRegExecCallbacks) xmlSchemaVContentModelCallback,
-                   vctxt);
+                   xmlSchemaVContentModelCallback, vctxt);
                if (regexCtxt == NULL) {
                    VERROR_INT("xmlSchemaValidateChildElem",
                        "failed to create a regex context");


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