components/libxml2/patches/globals.patch
changeset 148 33ca3897ae25
equal deleted inserted replaced
147:5af6875cbf70 148:33ca3897ae25
       
     1 --- libxml2-2.7.6/xpointer.c	Thu Sep 24 08:32:00 2009
       
     2 +++ libxml2-2.7.3/xpointer.c	Wed Jan  3 05:07:52 2007
       
     3 @@ -1301,19 +1299,12 @@
       
     4   *									*
       
     5   ************************************************************************/
       
     6  
       
     7 -static
       
     8  void xmlXPtrStringRangeFunction(xmlXPathParserContextPtr ctxt, int nargs);
       
     9 -static
       
    10  void xmlXPtrStartPointFunction(xmlXPathParserContextPtr ctxt, int nargs);
       
    11 -static
       
    12  void xmlXPtrEndPointFunction(xmlXPathParserContextPtr ctxt, int nargs);
       
    13 -static
       
    14  void xmlXPtrHereFunction(xmlXPathParserContextPtr ctxt, int nargs);
       
    15 -static
       
    16  void xmlXPtrOriginFunction(xmlXPathParserContextPtr ctxt, int nargs);
       
    17 -static
       
    18  void xmlXPtrRangeInsideFunction(xmlXPathParserContextPtr ctxt, int nargs);
       
    19 -static
       
    20  void xmlXPtrRangeFunction(xmlXPathParserContextPtr ctxt, int nargs);
       
    21  
       
    22  /**
       
    23 @@ -1741,7 +1732,7 @@
       
    24   * Function implementing here() operation 
       
    25   * as described in 5.4.3
       
    26   */
       
    27 -static void
       
    28 +void
       
    29  xmlXPtrHereFunction(xmlXPathParserContextPtr ctxt, int nargs) {
       
    30      CHECK_ARITY(0);
       
    31  
       
    32 @@ -1759,7 +1750,7 @@
       
    33   * Function implementing origin() operation 
       
    34   * as described in 5.4.3
       
    35   */
       
    36 -static void
       
    37 +void
       
    38  xmlXPtrOriginFunction(xmlXPathParserContextPtr ctxt, int nargs) {
       
    39      CHECK_ARITY(0);
       
    40  
       
    41 @@ -1792,7 +1783,7 @@
       
    42   * ----------------
       
    43   *
       
    44   */
       
    45 -static void
       
    46 +void
       
    47  xmlXPtrStartPointFunction(xmlXPathParserContextPtr ctxt, int nargs) {
       
    48      xmlXPathObjectPtr tmp, obj, point;
       
    49      xmlLocationSetPtr newset = NULL;
       
    50 @@ -1886,7 +1877,7 @@
       
    51   *   syntax error.
       
    52   * ----------------------------
       
    53   */
       
    54 -static void
       
    55 +void
       
    56  xmlXPtrEndPointFunction(xmlXPathParserContextPtr ctxt, int nargs) {
       
    57      xmlXPathObjectPtr tmp, obj, point;
       
    58      xmlLocationSetPtr newset = NULL;
       
    59 @@ -2031,7 +2022,7 @@
       
    60   *  location-set, a range location representing the covering range of
       
    61   *  x is added to the result location-set.
       
    62   */
       
    63 -static void
       
    64 +void
       
    65  xmlXPtrRangeFunction(xmlXPathParserContextPtr ctxt, int nargs) {
       
    66      int i;
       
    67      xmlXPathObjectPtr set;
       
    68 @@ -2177,7 +2168,7 @@
       
    69   *  location children of x.
       
    70   *
       
    71   */
       
    72 -static void
       
    73 +void
       
    74  xmlXPtrRangeInsideFunction(xmlXPathParserContextPtr ctxt, int nargs) {
       
    75      int i;
       
    76      xmlXPathObjectPtr set;
       
    77 @@ -2765,7 +2757,7 @@
       
    78   * all be character points.
       
    79   * ------------------------------
       
    80   */
       
    81 -static void
       
    82 +void
       
    83  xmlXPtrStringRangeFunction(xmlXPathParserContextPtr ctxt, int nargs) {
       
    84      int i, startindex, endindex = 0, fendindex;
       
    85      xmlNodePtr start, end = 0, fend;
       
    86 --- libxml2-2.7.6/tree.c	Thu Sep 24 08:32:00 2009
       
    87 +++ libxml2-2.7.3/tree.c	Sat Jan 17 05:45:34 2009
       
    88 @@ -49,8 +49,7 @@
       
    89   *									*
       
    90   ************************************************************************/
       
    91  
       
    92 -static xmlNsPtr
       
    93 -xmlNewReconciliedNs(xmlDocPtr doc, xmlNodePtr tree, xmlNsPtr ns);
       
    94 +xmlNsPtr xmlNewReconciliedNs(xmlDocPtr doc, xmlNodePtr tree, xmlNsPtr ns);
       
    95  
       
    96  static xmlChar* xmlGetPropNodeValueInternal(xmlAttrPtr prop);
       
    97  
       
    98 @@ -6055,7 +6045,7 @@
       
    99   * @tree or on one of its ancestors then a new prefix is generated.
       
   100   * Returns the (new) namespace definition or NULL in case of error
       
   101   */
       
   102 -static xmlNsPtr
       
   103 +xmlNsPtr
       
   104  xmlNewReconciliedNs(xmlDocPtr doc, xmlNodePtr tree, xmlNsPtr ns) {
       
   105      xmlNsPtr def;
       
   106      xmlChar prefix[50];
       
   107 --- libxml2-2.7.6/valid.c	Thu Sep 24 08:32:00 2009
       
   108 +++ libxml2-2.7.3/valid.c	Thu Nov 27 06:04:13 2008
       
   109 @@ -637,6 +637,8 @@
       
   110     else if ((doc->intSubset == NULL) &&				\
       
   111  	    (doc->extSubset == NULL)) return(0)
       
   112  
       
   113 +xmlAttributePtr xmlScanAttributeDecl(xmlDtdPtr dtd, const xmlChar *elem);
       
   114 +
       
   115  #ifdef LIBXML_REGEXP_ENABLED
       
   116  
       
   117  /************************************************************************
       
   118 @@ -1831,6 +1833,53 @@
       
   119  
       
   120  #ifdef LIBXML_VALID_ENABLED
       
   121  /**
       
   122 + * xmlScanAttributeDeclCallback:
       
   123 + * @attr:  the attribute decl
       
   124 + * @list:  the list to update
       
   125 + *
       
   126 + * Callback called by xmlScanAttributeDecl when a new attribute
       
   127 + * has to be entered in the list.
       
   128 + */
       
   129 +static void
       
   130 +xmlScanAttributeDeclCallback(xmlAttributePtr attr, xmlAttributePtr *list,
       
   131 +	                     const xmlChar* name ATTRIBUTE_UNUSED) {
       
   132 +    attr->nexth = *list;
       
   133 +    *list = attr;
       
   134 +}
       
   135 +
       
   136 +/**
       
   137 + * xmlScanAttributeDecl:
       
   138 + * @dtd:  pointer to the DTD
       
   139 + * @elem:  the element name
       
   140 + *
       
   141 + * When inserting a new element scan the DtD for existing attributes
       
   142 + * for that element and initialize the Attribute chain
       
   143 + *
       
   144 + * Returns the pointer to the first attribute decl in the chain,
       
   145 + *         possibly NULL.
       
   146 + */
       
   147 +xmlAttributePtr
       
   148 +xmlScanAttributeDecl(xmlDtdPtr dtd, const xmlChar *elem) {
       
   149 +    xmlAttributePtr ret = NULL;
       
   150 +    xmlAttributeTablePtr table;
       
   151 +
       
   152 +    if (dtd == NULL) {
       
   153 +	return(NULL);
       
   154 +    }
       
   155 +    if (elem == NULL) {
       
   156 +	return(NULL);
       
   157 +    }
       
   158 +    table = (xmlAttributeTablePtr) dtd->attributes;
       
   159 +    if (table == NULL) 
       
   160 +        return(NULL);
       
   161 +
       
   162 +    /* WRONG !!! */
       
   163 +    xmlHashScan3(table, NULL, NULL, elem,
       
   164 +	        (xmlHashScanner) xmlScanAttributeDeclCallback, &ret);
       
   165 +    return(ret);
       
   166 +}
       
   167 +
       
   168 +/**
       
   169   * xmlScanIDAttributeDecl:
       
   170   * @ctxt:  the validation context
       
   171   * @elem:  the element name
       
   172 --- libxml2-2.7.6/parser.c	Thu Sep 24 08:31:59 2009
       
   173 +++ libxml2-2.7.3/parser.c	Thu Sep  3 08:28:43 2009
       
   174 @@ -202,8 +198,8 @@
       
   175  
       
   176  
       
   177  /* DEPR void xmlParserHandleReference(xmlParserCtxtPtr ctxt); */
       
   178 -static xmlEntityPtr xmlParseStringPEReference(xmlParserCtxtPtr ctxt,
       
   179 -                                              const xmlChar **str);
       
   180 +xmlEntityPtr xmlParseStringPEReference(xmlParserCtxtPtr ctxt,
       
   181 +                                       const xmlChar **str);
       
   182  
       
   183  static xmlParserErrors
       
   184  xmlParseExternalEntityPrivate(xmlDocPtr doc, xmlParserCtxtPtr oldctxt,
       
   185 @@ -1359,8 +1342,8 @@
       
   186   *									*
       
   187   ************************************************************************/
       
   188  
       
   189 -static xmlEntityPtr xmlParseStringEntityRef(xmlParserCtxtPtr ctxt,
       
   190 -                                            const xmlChar ** str);
       
   191 +xmlEntityPtr xmlParseStringEntityRef(xmlParserCtxtPtr ctxt,
       
   192 +                                     const xmlChar ** str);
       
   193  
       
   194  #ifdef SAX2
       
   195  /**
       
   196 @@ -4015,7 +3978,7 @@
       
   197      return(buf);
       
   198  }
       
   199  
       
   200 -static void xmlParseCharDataComplex(xmlParserCtxtPtr ctxt, int cdata);
       
   201 +void xmlParseCharDataComplex(xmlParserCtxtPtr ctxt, int cdata);
       
   202  
       
   203  /*
       
   204   * used for the test in the inner loop of the char data testing
       
   205 @@ -4220,7 +4183,7 @@
       
   206   * of xmlParseCharData() when the parsing requires handling
       
   207   * of non-ASCII characters.
       
   208   */
       
   209 -static void
       
   210 +void
       
   211  xmlParseCharDataComplex(xmlParserCtxtPtr ctxt, int cdata) {
       
   212      xmlChar buf[XML_PARSER_BIG_BUFFER_SIZE + 5];
       
   213      int nbchar = 0;
       
   214 @@ -7293,7 +7257,7 @@
       
   215   * Returns the xmlEntityPtr if found, or NULL otherwise. The str pointer
       
   216   * is updated to the current location in the string.
       
   217   */
       
   218 -static xmlEntityPtr
       
   219 +xmlEntityPtr
       
   220  xmlParseStringEntityRef(xmlParserCtxtPtr ctxt, const xmlChar ** str) {
       
   221      xmlChar *name;
       
   222      const xmlChar *ptr;
       
   223 @@ -7701,7 +7666,7 @@
       
   224   * Returns the string of the entity content.
       
   225   *         str is updated to the current value of the index
       
   226   */
       
   227 -static xmlEntityPtr
       
   228 +xmlEntityPtr
       
   229  xmlParseStringPEReference(xmlParserCtxtPtr ctxt, const xmlChar **str) {
       
   230      const xmlChar *ptr;
       
   231      xmlChar cur;