nokogiri 1.15.5-x86-mingw32 → 1.16.0.rc1-x86-mingw32

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of nokogiri might be problematic. Click here for more details.

Files changed (73) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +11 -14
  3. data/README.md +1 -1
  4. data/dependencies.yml +5 -5
  5. data/ext/nokogiri/extconf.rb +3 -4
  6. data/ext/nokogiri/html4_sax_push_parser.c +1 -1
  7. data/ext/nokogiri/include/libxml2/libxml/HTMLparser.h +23 -0
  8. data/ext/nokogiri/include/libxml2/libxml/SAX.h +0 -2
  9. data/ext/nokogiri/include/libxml2/libxml/SAX2.h +0 -2
  10. data/ext/nokogiri/include/libxml2/libxml/c14n.h +0 -2
  11. data/ext/nokogiri/include/libxml2/libxml/dict.h +1 -0
  12. data/ext/nokogiri/include/libxml2/libxml/encoding.h +16 -14
  13. data/ext/nokogiri/include/libxml2/libxml/entities.h +4 -0
  14. data/ext/nokogiri/include/libxml2/libxml/globals.h +15 -503
  15. data/ext/nokogiri/include/libxml2/libxml/hash.h +57 -61
  16. data/ext/nokogiri/include/libxml2/libxml/nanoftp.h +2 -2
  17. data/ext/nokogiri/include/libxml2/libxml/parser.h +128 -18
  18. data/ext/nokogiri/include/libxml2/libxml/parserInternals.h +1 -0
  19. data/ext/nokogiri/include/libxml2/libxml/relaxng.h +2 -1
  20. data/ext/nokogiri/include/libxml2/libxml/schemasInternals.h +1 -0
  21. data/ext/nokogiri/include/libxml2/libxml/schematron.h +1 -0
  22. data/ext/nokogiri/include/libxml2/libxml/threads.h +4 -11
  23. data/ext/nokogiri/include/libxml2/libxml/tree.h +68 -20
  24. data/ext/nokogiri/include/libxml2/libxml/uri.h +2 -1
  25. data/ext/nokogiri/include/libxml2/libxml/valid.h +2 -0
  26. data/ext/nokogiri/include/libxml2/libxml/xmlIO.h +65 -12
  27. data/ext/nokogiri/include/libxml2/libxml/xmlerror.h +37 -8
  28. data/ext/nokogiri/include/libxml2/libxml/xmlmemory.h +37 -40
  29. data/ext/nokogiri/include/libxml2/libxml/xmlreader.h +6 -0
  30. data/ext/nokogiri/include/libxml2/libxml/xmlregexp.h +2 -9
  31. data/ext/nokogiri/include/libxml2/libxml/xmlsave.h +9 -0
  32. data/ext/nokogiri/include/libxml2/libxml/xmlschemas.h +3 -0
  33. data/ext/nokogiri/include/libxml2/libxml/xmlversion.h +28 -43
  34. data/ext/nokogiri/include/libxml2/libxml/xpath.h +1 -1
  35. data/ext/nokogiri/include/libxml2/libxml/xpathInternals.h +2 -1
  36. data/ext/nokogiri/include/libxml2/libxml/xpointer.h +5 -4
  37. data/ext/nokogiri/nokogiri.h +10 -3
  38. data/ext/nokogiri/test_global_handlers.c +1 -1
  39. data/ext/nokogiri/xml_cdata.c +1 -2
  40. data/ext/nokogiri/xml_document.c +3 -3
  41. data/ext/nokogiri/xml_namespace.c +0 -4
  42. data/ext/nokogiri/xml_node.c +5 -8
  43. data/ext/nokogiri/xml_reader.c +1 -44
  44. data/ext/nokogiri/xml_relax_ng.c +1 -1
  45. data/ext/nokogiri/xml_sax_push_parser.c +1 -1
  46. data/ext/nokogiri/xml_schema.c +2 -3
  47. data/ext/nokogiri/xml_syntax_error.c +3 -3
  48. data/ext/nokogiri/xml_text.c +1 -2
  49. data/ext/nokogiri/xml_xpath_context.c +2 -5
  50. data/gumbo-parser/Makefile +15 -0
  51. data/lib/nokogiri/3.0/nokogiri.so +0 -0
  52. data/lib/nokogiri/3.1/nokogiri.so +0 -0
  53. data/lib/nokogiri/3.2/nokogiri.so +0 -0
  54. data/lib/nokogiri/{2.7 → 3.3}/nokogiri.so +0 -0
  55. data/lib/nokogiri/css/parser_extras.rb +1 -1
  56. data/lib/nokogiri/css/xpath_visitor.rb +1 -21
  57. data/lib/nokogiri/html4/document.rb +1 -1
  58. data/lib/nokogiri/html4/encoding_reader.rb +1 -1
  59. data/lib/nokogiri/html5.rb +0 -66
  60. data/lib/nokogiri/version/constant.rb +1 -1
  61. data/lib/nokogiri/version/info.rb +6 -5
  62. data/lib/nokogiri/xml/attr.rb +2 -2
  63. data/lib/nokogiri/xml/document.rb +3 -3
  64. data/lib/nokogiri/xml/document_fragment.rb +2 -2
  65. data/lib/nokogiri/xml/namespace.rb +1 -2
  66. data/lib/nokogiri/xml/node.rb +6 -5
  67. data/lib/nokogiri/xml/node_set.rb +3 -3
  68. data/lib/nokogiri/xml/searchable.rb +3 -3
  69. data/lib/nokogiri/xml/syntax_error.rb +1 -1
  70. data/lib/nokogiri/xml.rb +1 -1
  71. data/lib/nokogiri/xslt.rb +1 -1
  72. data/lib/nokogiri.rb +1 -1
  73. metadata +7 -7
@@ -11,6 +11,10 @@
11
11
  #ifndef __XML_HASH_H__
12
12
  #define __XML_HASH_H__
13
13
 
14
+ #include <libxml/xmlversion.h>
15
+ #include <libxml/dict.h>
16
+ #include <libxml/xmlstring.h>
17
+
14
18
  #ifdef __cplusplus
15
19
  extern "C" {
16
20
  #endif
@@ -21,18 +25,6 @@ extern "C" {
21
25
  typedef struct _xmlHashTable xmlHashTable;
22
26
  typedef xmlHashTable *xmlHashTablePtr;
23
27
 
24
- #ifdef __cplusplus
25
- }
26
- #endif
27
-
28
- #include <libxml/xmlversion.h>
29
- #include <libxml/parser.h>
30
- #include <libxml/dict.h>
31
-
32
- #ifdef __cplusplus
33
- extern "C" {
34
- #endif
35
-
36
28
  /*
37
29
  * Recent version of gcc produce a warning when a function pointer is assigned
38
30
  * to an object pointer, or vice versa. The following macro is a dirty hack
@@ -55,7 +47,6 @@ extern "C" {
55
47
 
56
48
  #define XML_CAST_FPTR(fptr) fptr
57
49
 
58
-
59
50
  /*
60
51
  * function types:
61
52
  */
@@ -104,131 +95,136 @@ typedef void (*xmlHashScannerFull)(void *payload, void *data,
104
95
  * Constructor and destructor.
105
96
  */
106
97
  XMLPUBFUN xmlHashTablePtr
107
- xmlHashCreate (int size);
98
+ xmlHashCreate (int size);
108
99
  XMLPUBFUN xmlHashTablePtr
109
- xmlHashCreateDict(int size,
100
+ xmlHashCreateDict (int size,
110
101
  xmlDictPtr dict);
111
102
  XMLPUBFUN void
112
- xmlHashFree (xmlHashTablePtr table,
113
- xmlHashDeallocator f);
103
+ xmlHashFree (xmlHashTablePtr hash,
104
+ xmlHashDeallocator dealloc);
114
105
  XMLPUBFUN void
115
- xmlHashDefaultDeallocator(void *entry,
106
+ xmlHashDefaultDeallocator(void *entry,
116
107
  const xmlChar *name);
117
108
 
118
109
  /*
119
110
  * Add a new entry to the hash table.
120
111
  */
121
112
  XMLPUBFUN int
122
- xmlHashAddEntry (xmlHashTablePtr table,
113
+ xmlHashAddEntry (xmlHashTablePtr hash,
123
114
  const xmlChar *name,
124
115
  void *userdata);
125
116
  XMLPUBFUN int
126
- xmlHashUpdateEntry(xmlHashTablePtr table,
117
+ xmlHashUpdateEntry (xmlHashTablePtr hash,
127
118
  const xmlChar *name,
128
119
  void *userdata,
129
- xmlHashDeallocator f);
120
+ xmlHashDeallocator dealloc);
130
121
  XMLPUBFUN int
131
- xmlHashAddEntry2(xmlHashTablePtr table,
122
+ xmlHashAddEntry2 (xmlHashTablePtr hash,
132
123
  const xmlChar *name,
133
124
  const xmlChar *name2,
134
125
  void *userdata);
135
126
  XMLPUBFUN int
136
- xmlHashUpdateEntry2(xmlHashTablePtr table,
127
+ xmlHashUpdateEntry2 (xmlHashTablePtr hash,
137
128
  const xmlChar *name,
138
129
  const xmlChar *name2,
139
130
  void *userdata,
140
- xmlHashDeallocator f);
131
+ xmlHashDeallocator dealloc);
141
132
  XMLPUBFUN int
142
- xmlHashAddEntry3(xmlHashTablePtr table,
133
+ xmlHashAddEntry3 (xmlHashTablePtr hash,
143
134
  const xmlChar *name,
144
135
  const xmlChar *name2,
145
136
  const xmlChar *name3,
146
137
  void *userdata);
147
138
  XMLPUBFUN int
148
- xmlHashUpdateEntry3(xmlHashTablePtr table,
139
+ xmlHashUpdateEntry3 (xmlHashTablePtr hash,
149
140
  const xmlChar *name,
150
141
  const xmlChar *name2,
151
142
  const xmlChar *name3,
152
143
  void *userdata,
153
- xmlHashDeallocator f);
144
+ xmlHashDeallocator dealloc);
154
145
 
155
146
  /*
156
147
  * Remove an entry from the hash table.
157
148
  */
158
149
  XMLPUBFUN int
159
- xmlHashRemoveEntry(xmlHashTablePtr table, const xmlChar *name,
160
- xmlHashDeallocator f);
150
+ xmlHashRemoveEntry (xmlHashTablePtr hash,
151
+ const xmlChar *name,
152
+ xmlHashDeallocator dealloc);
161
153
  XMLPUBFUN int
162
- xmlHashRemoveEntry2(xmlHashTablePtr table, const xmlChar *name,
163
- const xmlChar *name2, xmlHashDeallocator f);
154
+ xmlHashRemoveEntry2 (xmlHashTablePtr hash,
155
+ const xmlChar *name,
156
+ const xmlChar *name2,
157
+ xmlHashDeallocator dealloc);
164
158
  XMLPUBFUN int
165
- xmlHashRemoveEntry3(xmlHashTablePtr table, const xmlChar *name,
166
- const xmlChar *name2, const xmlChar *name3,
167
- xmlHashDeallocator f);
159
+ xmlHashRemoveEntry3 (xmlHashTablePtr hash,
160
+ const xmlChar *name,
161
+ const xmlChar *name2,
162
+ const xmlChar *name3,
163
+ xmlHashDeallocator dealloc);
168
164
 
169
165
  /*
170
- * Retrieve the userdata.
166
+ * Retrieve the payload.
171
167
  */
172
168
  XMLPUBFUN void *
173
- xmlHashLookup (xmlHashTablePtr table,
169
+ xmlHashLookup (xmlHashTablePtr hash,
174
170
  const xmlChar *name);
175
171
  XMLPUBFUN void *
176
- xmlHashLookup2 (xmlHashTablePtr table,
172
+ xmlHashLookup2 (xmlHashTablePtr hash,
177
173
  const xmlChar *name,
178
174
  const xmlChar *name2);
179
175
  XMLPUBFUN void *
180
- xmlHashLookup3 (xmlHashTablePtr table,
176
+ xmlHashLookup3 (xmlHashTablePtr hash,
181
177
  const xmlChar *name,
182
178
  const xmlChar *name2,
183
179
  const xmlChar *name3);
184
180
  XMLPUBFUN void *
185
- xmlHashQLookup (xmlHashTablePtr table,
186
- const xmlChar *name,
187
- const xmlChar *prefix);
188
- XMLPUBFUN void *
189
- xmlHashQLookup2 (xmlHashTablePtr table,
190
- const xmlChar *name,
181
+ xmlHashQLookup (xmlHashTablePtr hash,
191
182
  const xmlChar *prefix,
192
- const xmlChar *name2,
193
- const xmlChar *prefix2);
183
+ const xmlChar *name);
194
184
  XMLPUBFUN void *
195
- xmlHashQLookup3 (xmlHashTablePtr table,
185
+ xmlHashQLookup2 (xmlHashTablePtr hash,
186
+ const xmlChar *prefix,
196
187
  const xmlChar *name,
188
+ const xmlChar *prefix2,
189
+ const xmlChar *name2);
190
+ XMLPUBFUN void *
191
+ xmlHashQLookup3 (xmlHashTablePtr hash,
197
192
  const xmlChar *prefix,
198
- const xmlChar *name2,
193
+ const xmlChar *name,
199
194
  const xmlChar *prefix2,
200
- const xmlChar *name3,
201
- const xmlChar *prefix3);
195
+ const xmlChar *name2,
196
+ const xmlChar *prefix3,
197
+ const xmlChar *name3);
202
198
 
203
199
  /*
204
200
  * Helpers.
205
201
  */
206
202
  XMLPUBFUN xmlHashTablePtr
207
- xmlHashCopy (xmlHashTablePtr table,
208
- xmlHashCopier f);
203
+ xmlHashCopy (xmlHashTablePtr hash,
204
+ xmlHashCopier copy);
209
205
  XMLPUBFUN int
210
- xmlHashSize (xmlHashTablePtr table);
206
+ xmlHashSize (xmlHashTablePtr hash);
211
207
  XMLPUBFUN void
212
- xmlHashScan (xmlHashTablePtr table,
213
- xmlHashScanner f,
208
+ xmlHashScan (xmlHashTablePtr hash,
209
+ xmlHashScanner scan,
214
210
  void *data);
215
211
  XMLPUBFUN void
216
- xmlHashScan3 (xmlHashTablePtr table,
212
+ xmlHashScan3 (xmlHashTablePtr hash,
217
213
  const xmlChar *name,
218
214
  const xmlChar *name2,
219
215
  const xmlChar *name3,
220
- xmlHashScanner f,
216
+ xmlHashScanner scan,
221
217
  void *data);
222
218
  XMLPUBFUN void
223
- xmlHashScanFull (xmlHashTablePtr table,
224
- xmlHashScannerFull f,
219
+ xmlHashScanFull (xmlHashTablePtr hash,
220
+ xmlHashScannerFull scan,
225
221
  void *data);
226
222
  XMLPUBFUN void
227
- xmlHashScanFull3(xmlHashTablePtr table,
223
+ xmlHashScanFull3 (xmlHashTablePtr hash,
228
224
  const xmlChar *name,
229
225
  const xmlChar *name2,
230
226
  const xmlChar *name3,
231
- xmlHashScannerFull f,
227
+ xmlHashScannerFull scan,
232
228
  void *data);
233
229
  #ifdef __cplusplus
234
230
  }
@@ -14,7 +14,7 @@
14
14
 
15
15
  #include <libxml/xmlversion.h>
16
16
 
17
- #ifdef LIBXML_FTP_ENABLED
17
+ #if defined(LIBXML_FTP_ENABLED)
18
18
 
19
19
  /* Needed for portability to Windows 64 bits */
20
20
  #if defined(_WIN32)
@@ -182,5 +182,5 @@ XMLPUBFUN int
182
182
  #ifdef __cplusplus
183
183
  }
184
184
  #endif
185
- #endif /* LIBXML_FTP_ENABLED */
185
+ #endif /* defined(LIBXML_FTP_ENABLED) || defined(LIBXML_LEGACY_ENABLED) */
186
186
  #endif /* __NANO_FTP_H__ */
@@ -11,13 +11,21 @@
11
11
  #define __XML_PARSER_H__
12
12
 
13
13
  #include <libxml/xmlversion.h>
14
+ #define XML_TREE_INTERNALS
14
15
  #include <libxml/tree.h>
16
+ #undef XML_TREE_INTERNALS
15
17
  #include <libxml/dict.h>
16
18
  #include <libxml/hash.h>
17
19
  #include <libxml/valid.h>
18
20
  #include <libxml/entities.h>
19
21
  #include <libxml/xmlerror.h>
20
22
  #include <libxml/xmlstring.h>
23
+ #include <libxml/xmlmemory.h>
24
+ #include <libxml/encoding.h>
25
+ #include <libxml/xmlIO.h>
26
+ /* for compatibility */
27
+ #include <libxml/SAX2.h>
28
+ #include <libxml/threads.h>
21
29
 
22
30
  #ifdef __cplusplus
23
31
  extern "C" {
@@ -63,9 +71,9 @@ struct _xmlParserInput {
63
71
  int col; /* Current column */
64
72
  unsigned long consumed; /* How many xmlChars already consumed */
65
73
  xmlParserInputDeallocate free; /* function to deallocate the base */
66
- const xmlChar *encoding; /* the encoding string for entity */
74
+ const xmlChar *encoding; /* unused */
67
75
  const xmlChar *version; /* the version string for entity */
68
- int standalone; /* Was that entity marked standalone */
76
+ int flags; /* Flags */
69
77
  int id; /* an unique identifier for the entity */
70
78
  unsigned long parentConsumed; /* consumed bytes from parents */
71
79
  xmlEntityPtr entity; /* entity, if any */
@@ -122,7 +130,8 @@ typedef enum {
122
130
  XML_PARSER_SYSTEM_LITERAL, /* within a SYSTEM value */
123
131
  XML_PARSER_EPILOG, /* the Misc* after the last end tag */
124
132
  XML_PARSER_IGNORE, /* within an IGNORED section */
125
- XML_PARSER_PUBLIC_LITERAL /* within a PUBLIC value */
133
+ XML_PARSER_PUBLIC_LITERAL, /* within a PUBLIC value */
134
+ XML_PARSER_XML_DECL /* before XML decl (but after BOM) */
126
135
  } xmlParserInputState;
127
136
 
128
137
  /**
@@ -165,6 +174,8 @@ typedef enum {
165
174
  } xmlParserMode;
166
175
 
167
176
  typedef struct _xmlStartTag xmlStartTag;
177
+ typedef struct _xmlParserNsData xmlParserNsData;
178
+ typedef struct _xmlAttrHashBucket xmlAttrHashBucket;
168
179
 
169
180
  /**
170
181
  * xmlParserCtxt:
@@ -245,8 +256,7 @@ struct _xmlParserCtxt {
245
256
 
246
257
  int depth; /* to prevent entity substitution loops */
247
258
  xmlParserInputPtr entity; /* used to check entities boundaries */
248
- int charset; /* encoding of the in-memory content
249
- actually an xmlCharEncoding */
259
+ int charset; /* unused */
250
260
  int nodelen; /* Those two fields are there to */
251
261
  int nodemem; /* Speed up large node parsing */
252
262
  int pedantic; /* signal pedantic warnings */
@@ -276,7 +286,7 @@ struct _xmlParserCtxt {
276
286
  int nsNr; /* the number of inherited namespaces */
277
287
  int nsMax; /* the size of the arrays */
278
288
  const xmlChar * *nsTab; /* the array of prefix/namespace name */
279
- int *attallocs; /* which attribute were allocated */
289
+ unsigned *attallocs; /* which attribute were allocated */
280
290
  xmlStartTag *pushTab; /* array of data for push */
281
291
  xmlHashTablePtr attsDefault; /* defaulted attributes if any */
282
292
  xmlHashTablePtr attsSpecial; /* non-CDATA attributes if any */
@@ -312,6 +322,11 @@ struct _xmlParserCtxt {
312
322
  int endCheckState; /* quote state for push parser */
313
323
  unsigned short nbErrors; /* number of errors */
314
324
  unsigned short nbWarnings; /* number of warnings */
325
+ unsigned maxAmpl; /* maximum amplification factor */
326
+
327
+ xmlParserNsData *nsdb; /* namespace database */
328
+ unsigned attrHashMax; /* allocated size */
329
+ xmlAttrHashBucket *attrHash; /* atttribute hash table */
315
330
  };
316
331
 
317
332
  /**
@@ -732,6 +747,19 @@ struct _xmlSAXHandler {
732
747
  setDocumentLocatorSAXFunc setDocumentLocator;
733
748
  startDocumentSAXFunc startDocument;
734
749
  endDocumentSAXFunc endDocument;
750
+ /*
751
+ * `startElement` and `endElement` are only used by the legacy SAX1
752
+ * interface and should not be used in new software. If you really
753
+ * have to enable SAX1, the preferred way is set the `initialized`
754
+ * member to 1 instead of XML_SAX2_MAGIC.
755
+ *
756
+ * For backward compatibility, it's also possible to set the
757
+ * `startElementNs` and `endElementNs` handlers to NULL.
758
+ *
759
+ * You can also set the XML_PARSE_SAX1 parser option, but versions
760
+ * older than 2.12.0 will probably crash if this option is provided
761
+ * together with custom SAX callbacks.
762
+ */
735
763
  startElementSAXFunc startElement;
736
764
  endElementSAXFunc endElement;
737
765
  referenceSAXFunc reference;
@@ -745,8 +773,14 @@ struct _xmlSAXHandler {
745
773
  getParameterEntitySAXFunc getParameterEntity;
746
774
  cdataBlockSAXFunc cdataBlock;
747
775
  externalSubsetSAXFunc externalSubset;
776
+ /*
777
+ * `initialized` should always be set to XML_SAX2_MAGIC to enable the
778
+ * modern SAX2 interface.
779
+ */
748
780
  unsigned int initialized;
749
- /* The following fields are extensions available only on version 2 */
781
+ /*
782
+ * The following members are only used by the SAX2 interface.
783
+ */
750
784
  void *_private;
751
785
  startElementNsSAX2Func startElementNs;
752
786
  endElementNsSAX2Func endElementNs;
@@ -804,18 +838,69 @@ typedef xmlParserInputPtr (*xmlExternalEntityLoader) (const char *URL,
804
838
  const char *ID,
805
839
  xmlParserCtxtPtr context);
806
840
 
807
- #ifdef __cplusplus
808
- }
841
+ /*
842
+ * Variables
843
+ */
844
+
845
+ XMLPUBVAR const char *const xmlParserVersion;
846
+ #ifdef LIBXML_THREAD_ENABLED
847
+ /* backward compatibility */
848
+ XMLPUBFUN const char *const *__xmlParserVersion(void);
809
849
  #endif
810
850
 
811
- #include <libxml/encoding.h>
812
- #include <libxml/xmlIO.h>
813
- #include <libxml/globals.h>
851
+ /** DOC_DISABLE */
852
+ #define XML_GLOBALS_PARSER_CORE \
853
+ XML_OP(oldXMLWDcompatibility, int, XML_DEPRECATED) \
854
+ XML_OP(xmlDefaultSAXLocator, xmlSAXLocator, XML_DEPRECATED) \
855
+ XML_OP(xmlDoValidityCheckingDefaultValue, int, XML_DEPRECATED) \
856
+ XML_OP(xmlGetWarningsDefaultValue, int, XML_DEPRECATED) \
857
+ XML_OP(xmlKeepBlanksDefaultValue, int, XML_DEPRECATED) \
858
+ XML_OP(xmlLineNumbersDefaultValue, int, XML_DEPRECATED) \
859
+ XML_OP(xmlLoadExtDtdDefaultValue, int, XML_DEPRECATED) \
860
+ XML_OP(xmlParserDebugEntities, int, XML_DEPRECATED) \
861
+ XML_OP(xmlPedanticParserDefaultValue, int, XML_DEPRECATED) \
862
+ XML_OP(xmlSubstituteEntitiesDefaultValue, int, XML_DEPRECATED) \
863
+ XML_OP(xmlIndentTreeOutput, int, XML_NO_ATTR) \
864
+ XML_OP(xmlTreeIndentString, const char *, XML_NO_ATTR) \
865
+ XML_OP(xmlSaveNoEmptyTags, int, XML_NO_ATTR)
814
866
 
815
- #ifdef __cplusplus
816
- extern "C" {
867
+ #ifdef LIBXML_SAX1_ENABLED
868
+ #define XML_GLOBALS_PARSER_SAX1 \
869
+ XML_OP(xmlDefaultSAXHandler, xmlSAXHandlerV1, XML_DEPRECATED)
870
+ #else
871
+ #define XML_GLOBALS_PARSER_SAX1
817
872
  #endif
818
873
 
874
+ #define XML_GLOBALS_PARSER \
875
+ XML_GLOBALS_PARSER_CORE \
876
+ XML_GLOBALS_PARSER_SAX1
877
+
878
+ #define XML_OP XML_DECLARE_GLOBAL
879
+ XML_GLOBALS_PARSER
880
+ #undef XML_OP
881
+
882
+ #if defined(LIBXML_THREAD_ENABLED) && !defined(XML_GLOBALS_NO_REDEFINITION)
883
+ #define oldXMLWDcompatibility XML_GLOBAL_MACRO(oldXMLWDcompatibility)
884
+ #define xmlDefaultSAXHandler XML_GLOBAL_MACRO(xmlDefaultSAXHandler)
885
+ #define xmlDefaultSAXLocator XML_GLOBAL_MACRO(xmlDefaultSAXLocator)
886
+ #define xmlDoValidityCheckingDefaultValue \
887
+ XML_GLOBAL_MACRO(xmlDoValidityCheckingDefaultValue)
888
+ #define xmlGetWarningsDefaultValue \
889
+ XML_GLOBAL_MACRO(xmlGetWarningsDefaultValue)
890
+ #define xmlKeepBlanksDefaultValue XML_GLOBAL_MACRO(xmlKeepBlanksDefaultValue)
891
+ #define xmlLineNumbersDefaultValue \
892
+ XML_GLOBAL_MACRO(xmlLineNumbersDefaultValue)
893
+ #define xmlLoadExtDtdDefaultValue XML_GLOBAL_MACRO(xmlLoadExtDtdDefaultValue)
894
+ #define xmlParserDebugEntities XML_GLOBAL_MACRO(xmlParserDebugEntities)
895
+ #define xmlPedanticParserDefaultValue \
896
+ XML_GLOBAL_MACRO(xmlPedanticParserDefaultValue)
897
+ #define xmlSubstituteEntitiesDefaultValue \
898
+ XML_GLOBAL_MACRO(xmlSubstituteEntitiesDefaultValue)
899
+ #define xmlIndentTreeOutput XML_GLOBAL_MACRO(xmlIndentTreeOutput)
900
+ #define xmlTreeIndentString XML_GLOBAL_MACRO(xmlTreeIndentString)
901
+ #define xmlSaveNoEmptyTags XML_GLOBAL_MACRO(xmlSaveNoEmptyTags)
902
+ #endif
903
+ /** DOC_ENABLE */
819
904
 
820
905
  /*
821
906
  * Init/Cleanup
@@ -824,6 +909,12 @@ XMLPUBFUN void
824
909
  xmlInitParser (void);
825
910
  XMLPUBFUN void
826
911
  xmlCleanupParser (void);
912
+ XML_DEPRECATED
913
+ XMLPUBFUN void
914
+ xmlInitGlobals (void);
915
+ XML_DEPRECATED
916
+ XMLPUBFUN void
917
+ xmlCleanupGlobals (void);
827
918
 
828
919
  /*
829
920
  * Input functions
@@ -849,16 +940,32 @@ XMLPUBFUN xmlDocPtr
849
940
  xmlParseMemory (const char *buffer,
850
941
  int size);
851
942
  #endif /* LIBXML_SAX1_ENABLED */
852
- XMLPUBFUN int
943
+ XML_DEPRECATED XMLPUBFUN int
853
944
  xmlSubstituteEntitiesDefault(int val);
854
- XMLPUBFUN int
945
+ XML_DEPRECATED XMLPUBFUN int
946
+ xmlThrDefSubstituteEntitiesDefaultValue(int v);
947
+ XML_DEPRECATED XMLPUBFUN int
855
948
  xmlKeepBlanksDefault (int val);
949
+ XML_DEPRECATED XMLPUBFUN int
950
+ xmlThrDefKeepBlanksDefaultValue(int v);
856
951
  XMLPUBFUN void
857
952
  xmlStopParser (xmlParserCtxtPtr ctxt);
858
- XMLPUBFUN int
953
+ XML_DEPRECATED XMLPUBFUN int
859
954
  xmlPedanticParserDefault(int val);
860
- XMLPUBFUN int
955
+ XML_DEPRECATED XMLPUBFUN int
956
+ xmlThrDefPedanticParserDefaultValue(int v);
957
+ XML_DEPRECATED XMLPUBFUN int
861
958
  xmlLineNumbersDefault (int val);
959
+ XML_DEPRECATED XMLPUBFUN int
960
+ xmlThrDefLineNumbersDefaultValue(int v);
961
+ XML_DEPRECATED XMLPUBFUN int
962
+ xmlThrDefDoValidityCheckingDefaultValue(int v);
963
+ XML_DEPRECATED XMLPUBFUN int
964
+ xmlThrDefGetWarningsDefaultValue(int v);
965
+ XML_DEPRECATED XMLPUBFUN int
966
+ xmlThrDefLoadExtDtdDefaultValue(int v);
967
+ XML_DEPRECATED XMLPUBFUN int
968
+ xmlThrDefParserDebugEntities(int v);
862
969
 
863
970
  #ifdef LIBXML_SAX1_ENABLED
864
971
  /*
@@ -1149,6 +1256,9 @@ XMLPUBFUN int
1149
1256
  XMLPUBFUN int
1150
1257
  xmlCtxtUseOptions (xmlParserCtxtPtr ctxt,
1151
1258
  int options);
1259
+ XMLPUBFUN void
1260
+ xmlCtxtSetMaxAmplification(xmlParserCtxtPtr ctxt,
1261
+ unsigned maxAmpl);
1152
1262
  XMLPUBFUN xmlDocPtr
1153
1263
  xmlReadDoc (const xmlChar *cur,
1154
1264
  const char *URL,
@@ -16,6 +16,7 @@
16
16
  #include <libxml/parser.h>
17
17
  #include <libxml/HTMLparser.h>
18
18
  #include <libxml/chvalid.h>
19
+ #include <libxml/SAX2.h>
19
20
 
20
21
  #ifdef __cplusplus
21
22
  extern "C" {
@@ -11,8 +11,9 @@
11
11
  #define __XML_RELAX_NG__
12
12
 
13
13
  #include <libxml/xmlversion.h>
14
- #include <libxml/hash.h>
14
+ #include <libxml/xmlerror.h>
15
15
  #include <libxml/xmlstring.h>
16
+ #include <libxml/tree.h>
16
17
 
17
18
  #ifdef LIBXML_SCHEMAS_ENABLED
18
19
 
@@ -21,6 +21,7 @@
21
21
  #include <libxml/xmlregexp.h>
22
22
  #include <libxml/hash.h>
23
23
  #include <libxml/dict.h>
24
+ #include <libxml/tree.h>
24
25
 
25
26
  #ifdef __cplusplus
26
27
  extern "C" {
@@ -15,6 +15,7 @@
15
15
 
16
16
  #ifdef LIBXML_SCHEMATRON_ENABLED
17
17
 
18
+ #include <libxml/xmlerror.h>
18
19
  #include <libxml/tree.h>
19
20
 
20
21
  #ifdef __cplusplus
@@ -29,13 +29,9 @@ typedef xmlMutex *xmlMutexPtr;
29
29
  typedef struct _xmlRMutex xmlRMutex;
30
30
  typedef xmlRMutex *xmlRMutexPtr;
31
31
 
32
- #ifdef __cplusplus
33
- }
34
- #endif
35
- #include <libxml/globals.h>
36
- #ifdef __cplusplus
37
- extern "C" {
38
- #endif
32
+ XMLPUBFUN int
33
+ xmlCheckThreadLocalStorage(void);
34
+
39
35
  XMLPUBFUN xmlMutexPtr
40
36
  xmlNewMutex (void);
41
37
  XMLPUBFUN void
@@ -73,13 +69,10 @@ XMLPUBFUN int
73
69
  XML_DEPRECATED
74
70
  XMLPUBFUN void
75
71
  xmlCleanupThreads(void);
76
- XML_DEPRECATED
77
- XMLPUBFUN xmlGlobalStatePtr
78
- xmlGetGlobalState(void);
79
72
 
80
73
  /** DOC_DISABLE */
81
74
  #if defined(LIBXML_THREAD_ENABLED) && defined(_WIN32) && \
82
- !defined(HAVE_COMPILER_TLS) && defined(LIBXML_STATIC_FOR_DLL)
75
+ defined(LIBXML_STATIC_FOR_DLL)
83
76
  int
84
77
  xmlDllMain(void *hinstDLL, unsigned long fdwReason,
85
78
  void *lpvReserved);