mirror of
https://github.com/darlinghq/darling-libxml2.git
synced 2025-01-05 19:29:09 +00:00
1703c5fc23
* test/relaxng/OASIS/spectest.xml: OASIS RelaxNG testsuite * check-relaxng-test-suite.py: python script to run regression against OASIS RelaxNG testsuite * relaxng.c: some cleanup tweaks * HTMLparser.c globals.c: cleanups in comments * doc/libxml2-api.xml: updated the API * result/relaxng/*: errors moved files, so large diffs but no changes at the semantic level. Daniel
715 lines
17 KiB
C
715 lines
17 KiB
C
/*
|
|
* globals.c: definition and handling of the set of global variables
|
|
* of the library
|
|
*
|
|
* The bottom of this file is automatically generated by build_glob.py
|
|
* based on the description file global.data
|
|
*
|
|
* See Copyright for the status of this software.
|
|
*
|
|
* Gary Pennington <Gary.Pennington@uk.sun.com>
|
|
* daniel@veillard.com
|
|
*/
|
|
|
|
#define IN_LIBXML
|
|
#include "libxml.h"
|
|
|
|
#ifdef HAVE_STDLIB_H
|
|
#include <stdlib.h>
|
|
#endif
|
|
#include <string.h>
|
|
|
|
#include <libxml/globals.h>
|
|
#include <libxml/xmlmemory.h>
|
|
|
|
/* #define DEBUG_GLOBALS */
|
|
|
|
/*
|
|
* Helpful Macro
|
|
*/
|
|
#ifdef LIBXML_THREAD_ENABLED
|
|
#define IS_MAIN_THREAD (xmlIsMainThread())
|
|
#else
|
|
#define IS_MAIN_THREAD 1
|
|
#endif
|
|
|
|
/************************************************************************
|
|
* *
|
|
* All the user accessible global variables of the library *
|
|
* *
|
|
************************************************************************/
|
|
|
|
/*
|
|
* Memory allocation routines
|
|
*/
|
|
#if defined(DEBUG_MEMORY_LOCATION) || defined(DEBUG_MEMORY)
|
|
extern void xmlMemFree(void *ptr);
|
|
extern void * xmlMemMalloc(size_t size);
|
|
extern void * xmlMemRealloc(void *ptr,size_t size);
|
|
extern char * xmlMemoryStrdup(const char *str);
|
|
|
|
xmlFreeFunc xmlFree = (xmlFreeFunc) xmlMemFree;
|
|
xmlMallocFunc xmlMalloc = (xmlMallocFunc) xmlMemMalloc;
|
|
xmlReallocFunc xmlRealloc = (xmlReallocFunc) xmlMemRealloc;
|
|
xmlStrdupFunc xmlMemStrdup = (xmlStrdupFunc) xmlMemoryStrdup;
|
|
#else
|
|
/**
|
|
* xmlFree:
|
|
* @mem: an already allocated block of memory
|
|
*
|
|
* The variable holding the libxml free() implementation
|
|
*/
|
|
xmlFreeFunc xmlFree = (xmlFreeFunc) free;
|
|
/**
|
|
* xmlMalloc:
|
|
* @size: the size requested in bytes
|
|
*
|
|
* The variable holding the libxml malloc() implementation
|
|
*
|
|
* Returns a pointer to the newly allocated block or NULL in case of error
|
|
*/
|
|
xmlMallocFunc xmlMalloc = (xmlMallocFunc) malloc;
|
|
/**
|
|
* xmlRealloc:
|
|
* @mem: an already allocated block of memory
|
|
* @size: the new size requested in bytes
|
|
*
|
|
* The variable holding the libxml realloc() implementation
|
|
*
|
|
* Returns a pointer to the newly reallocated block or NULL in case of error
|
|
*/
|
|
xmlReallocFunc xmlRealloc = (xmlReallocFunc) realloc;
|
|
/**
|
|
* xmlMemStrdup:
|
|
* @str: a zero terminated string
|
|
*
|
|
* The variable holding the libxml strdup() implementation
|
|
*
|
|
* Returns the copy of the string or NULL in case of error
|
|
*/
|
|
xmlStrdupFunc xmlMemStrdup = (xmlStrdupFunc) xmlStrdup;
|
|
#endif
|
|
|
|
#include <libxml/threads.h>
|
|
#include <libxml/globals.h>
|
|
#include <libxml/SAX.h>
|
|
|
|
#undef docbDefaultSAXHandler
|
|
#undef htmlDefaultSAXHandler
|
|
#undef oldXMLWDcompatibility
|
|
#undef xmlBufferAllocScheme
|
|
#undef xmlDefaultBufferSize
|
|
#undef xmlDefaultSAXHandler
|
|
#undef xmlDefaultSAXLocator
|
|
#undef xmlDoValidityCheckingDefaultValue
|
|
#undef xmlGenericError
|
|
#undef xmlGenericErrorContext
|
|
#undef xmlGetWarningsDefaultValue
|
|
#undef xmlIndentTreeOutput
|
|
#undef xmlTreeIndentString
|
|
#undef xmlKeepBlanksDefaultValue
|
|
#undef xmlLineNumbersDefaultValue
|
|
#undef xmlLoadExtDtdDefaultValue
|
|
#undef xmlParserDebugEntities
|
|
#undef xmlParserVersion
|
|
#undef xmlPedanticParserDefaultValue
|
|
#undef xmlSaveNoEmptyTags
|
|
#undef xmlSubstituteEntitiesDefaultValue
|
|
#undef xmlRegisterNodeDefaultValue
|
|
#undef xmlDeregisterNodeDefaultValue
|
|
|
|
#undef xmlFree
|
|
#undef xmlMalloc
|
|
#undef xmlMemStrdup
|
|
#undef xmlRealloc
|
|
|
|
/**
|
|
* xmlParserVersion:
|
|
*
|
|
* Constant string describing the internal version of the library
|
|
*/
|
|
const char *xmlParserVersion = LIBXML_VERSION_STRING;
|
|
|
|
/**
|
|
* xmlBufferAllocScheme:
|
|
*
|
|
* Global setting, default allocation policy for buffers, default is
|
|
* XML_BUFFER_ALLOC_EXACT
|
|
*/
|
|
xmlBufferAllocationScheme xmlBufferAllocScheme = XML_BUFFER_ALLOC_EXACT;
|
|
/**
|
|
* xmlDefaultBufferSize:
|
|
*
|
|
* Global setting, default buffer size. Default value is BASE_BUFFER_SIZE
|
|
*/
|
|
int xmlDefaultBufferSize = BASE_BUFFER_SIZE;
|
|
|
|
/*
|
|
* Parser defaults
|
|
*/
|
|
|
|
/**
|
|
* oldXMLWDcompatibility:
|
|
*
|
|
* Global setting, DEPRECATED.
|
|
*/
|
|
int oldXMLWDcompatibility = 0; /* DEPRECATED */
|
|
/**
|
|
* xmlParserDebugEntities:
|
|
*
|
|
* Global setting, asking the parser to print out debugging informations.
|
|
* while handling entities.
|
|
* Disabled by default
|
|
*/
|
|
int xmlParserDebugEntities = 0;
|
|
/**
|
|
* xmlDoValidityCheckingDefaultValue:
|
|
*
|
|
* Global setting, indicate that the parser should work in validating mode.
|
|
* Disabled by default.
|
|
*/
|
|
int xmlDoValidityCheckingDefaultValue = 0;
|
|
/**
|
|
* xmlGetWarningsDefaultValue:
|
|
*
|
|
* Global setting, indicate that the parser should provide warnings.
|
|
* Activated by default.
|
|
*/
|
|
int xmlGetWarningsDefaultValue = 1;
|
|
/**
|
|
* xmlLoadExtDtdDefaultValue:
|
|
*
|
|
* Global setting, indicate that the parser should load DTD while not
|
|
* validating.
|
|
* Disabled by default.
|
|
*/
|
|
int xmlLoadExtDtdDefaultValue = 0;
|
|
/**
|
|
* xmlPedanticParserDefaultValue:
|
|
*
|
|
* Global setting, indicate that the parser be pedantic
|
|
* Disabled by default.
|
|
*/
|
|
int xmlPedanticParserDefaultValue = 0;
|
|
/**
|
|
* xmlLineNumbersDefaultValue:
|
|
*
|
|
* Global setting, indicate that the parser should store the line number
|
|
* in the content field of elements in the DOM tree.
|
|
* Disabled by default since this may not be safe for old classes of
|
|
* applicaton.
|
|
*/
|
|
int xmlLineNumbersDefaultValue = 0;
|
|
/**
|
|
* xmlKeepBlanksDefaultValue:
|
|
*
|
|
* Global setting, indicate that the parser should keep all blanks
|
|
* nodes found in the content
|
|
* Activated by default, this is actually needed to have the parser
|
|
* conformant to the XML Recommendation, however the option is kept
|
|
* for some applications since this was libxml1 default behaviour.
|
|
*/
|
|
int xmlKeepBlanksDefaultValue = 1;
|
|
/**
|
|
* xmlSubstituteEntitiesDefaultValue:
|
|
*
|
|
* Global setting, indicate that the parser should not generate entity
|
|
* references but replace them with the actual content of the entity
|
|
* Disabled by default, this should be activated when using XPath since
|
|
* the XPath data model requires entities replacement and the XPath
|
|
* engine does not handle entities references transparently.
|
|
*/
|
|
int xmlSubstituteEntitiesDefaultValue = 0;
|
|
|
|
xmlRegisterNodeFunc xmlRegisterNodeDefaultValue = NULL;
|
|
xmlDeregisterNodeFunc xmlDeregisterNodeDefaultValue = NULL;
|
|
|
|
/*
|
|
* Error handling
|
|
*/
|
|
|
|
/* xmlGenericErrorFunc xmlGenericError = xmlGenericErrorDefaultFunc; */
|
|
/* Must initialize xmlGenericError in xmlInitParser */
|
|
void xmlGenericErrorDefaultFunc (void *ctx ATTRIBUTE_UNUSED,
|
|
const char *msg,
|
|
...);
|
|
/**
|
|
* xmlGenericError:
|
|
*
|
|
* Global setting: function used for generic error callbacks
|
|
*/
|
|
xmlGenericErrorFunc xmlGenericError = xmlGenericErrorDefaultFunc;
|
|
/**
|
|
* xmlGenericErrorContext:
|
|
*
|
|
* Global setting passed to generic error callbacks
|
|
*/
|
|
void *xmlGenericErrorContext = NULL;
|
|
|
|
/*
|
|
* output defaults
|
|
*/
|
|
/**
|
|
* xmlIndentTreeOutput:
|
|
*
|
|
* Global setting, asking the serializer to indent the output tree by default
|
|
* Enabled by default
|
|
*/
|
|
int xmlIndentTreeOutput = 1;
|
|
|
|
/**
|
|
* xmlTreeIndentString:
|
|
*
|
|
* The string used to do one-level indent. By default is equal to " " (two spaces)
|
|
*/
|
|
const char *xmlTreeIndentString = " ";
|
|
|
|
/**
|
|
* xmlSaveNoEmptyTags:
|
|
*
|
|
* Global setting, asking the serializer to not output empty tags
|
|
* as <empty/> but <empty></empty>. those two forms are undistinguishable
|
|
* once parsed.
|
|
* Disabled by default
|
|
*/
|
|
int xmlSaveNoEmptyTags = 0;
|
|
|
|
/**
|
|
* xmlDefaultSAXHandler:
|
|
*
|
|
* Default handler for XML, builds the DOM tree
|
|
*/
|
|
xmlSAXHandler xmlDefaultSAXHandler = {
|
|
internalSubset,
|
|
isStandalone,
|
|
hasInternalSubset,
|
|
hasExternalSubset,
|
|
resolveEntity,
|
|
getEntity,
|
|
entityDecl,
|
|
notationDecl,
|
|
attributeDecl,
|
|
elementDecl,
|
|
unparsedEntityDecl,
|
|
setDocumentLocator,
|
|
startDocument,
|
|
endDocument,
|
|
startElement,
|
|
endElement,
|
|
reference,
|
|
characters,
|
|
characters,
|
|
processingInstruction,
|
|
comment,
|
|
xmlParserWarning,
|
|
xmlParserError,
|
|
xmlParserError,
|
|
getParameterEntity,
|
|
cdataBlock,
|
|
externalSubset,
|
|
0
|
|
};
|
|
|
|
/**
|
|
* xmlDefaultSAXLocator:
|
|
*
|
|
* The default SAX Locator
|
|
* { getPublicId, getSystemId, getLineNumber, getColumnNumber}
|
|
*/
|
|
xmlSAXLocator xmlDefaultSAXLocator = {
|
|
getPublicId, getSystemId, getLineNumber, getColumnNumber
|
|
};
|
|
|
|
#ifdef LIBXML_HTML_ENABLED
|
|
/**
|
|
* htmlDefaultSAXHandler:
|
|
*
|
|
* Default handler for HTML, builds the DOM tree
|
|
*/
|
|
xmlSAXHandler htmlDefaultSAXHandler = {
|
|
internalSubset,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
getEntity,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
setDocumentLocator,
|
|
startDocument,
|
|
endDocument,
|
|
startElement,
|
|
endElement,
|
|
NULL,
|
|
characters,
|
|
ignorableWhitespace,
|
|
NULL,
|
|
comment,
|
|
xmlParserWarning,
|
|
xmlParserError,
|
|
xmlParserError,
|
|
getParameterEntity,
|
|
cdataBlock,
|
|
NULL,
|
|
0
|
|
};
|
|
#endif /* LIBXML_HTML_ENABLED */
|
|
|
|
#ifdef LIBXML_DOCB_ENABLED
|
|
/**
|
|
* docbDefaultSAXHandler:
|
|
*
|
|
* Default handler for SGML DocBook, builds the DOM tree
|
|
*/
|
|
xmlSAXHandler docbDefaultSAXHandler = {
|
|
internalSubset,
|
|
isStandalone,
|
|
hasInternalSubset,
|
|
hasExternalSubset,
|
|
resolveEntity,
|
|
getEntity,
|
|
entityDecl,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
NULL,
|
|
setDocumentLocator,
|
|
startDocument,
|
|
endDocument,
|
|
startElement,
|
|
endElement,
|
|
reference,
|
|
characters,
|
|
ignorableWhitespace,
|
|
NULL,
|
|
comment,
|
|
xmlParserWarning,
|
|
xmlParserError,
|
|
xmlParserError,
|
|
getParameterEntity,
|
|
NULL,
|
|
NULL,
|
|
0
|
|
};
|
|
#endif /* LIBXML_DOCB_ENABLED */
|
|
|
|
/**
|
|
* xmlInitializeGlobalState:
|
|
* @gs: a pointer to a newly allocated global state
|
|
*
|
|
* xmlInitializeGlobalState() initialize a global state with all the
|
|
* default values of the library.
|
|
*/
|
|
void
|
|
xmlInitializeGlobalState(xmlGlobalStatePtr gs)
|
|
{
|
|
#ifdef DEBUG_GLOBALS
|
|
fprintf(stderr, "Initializing globals at %lu for thread %d\n",
|
|
(unsigned long) gs, xmlGetThreadId());
|
|
#endif
|
|
|
|
/*
|
|
* Perform initialization as required by libxml
|
|
*/
|
|
|
|
#ifdef LIBXML_DOCB_ENABLED
|
|
initdocbDefaultSAXHandler(&gs->docbDefaultSAXHandler);
|
|
#endif
|
|
#ifdef LIBXML_HTML_ENABLED
|
|
inithtmlDefaultSAXHandler(&gs->htmlDefaultSAXHandler);
|
|
#endif
|
|
initGenericErrorDefaultFunc(&gs->xmlGenericError);
|
|
|
|
gs->oldXMLWDcompatibility = 0;
|
|
gs->xmlBufferAllocScheme = XML_BUFFER_ALLOC_EXACT;
|
|
gs->xmlDefaultBufferSize = BASE_BUFFER_SIZE;
|
|
initxmlDefaultSAXHandler(&gs->xmlDefaultSAXHandler, 1);
|
|
gs->xmlDefaultSAXLocator.getPublicId = getPublicId;
|
|
gs->xmlDefaultSAXLocator.getSystemId = getSystemId;
|
|
gs->xmlDefaultSAXLocator.getLineNumber = getLineNumber;
|
|
gs->xmlDefaultSAXLocator.getColumnNumber = getColumnNumber;
|
|
gs->xmlDoValidityCheckingDefaultValue = 0;
|
|
#if defined(DEBUG_MEMORY_LOCATION) | defined(DEBUG_MEMORY)
|
|
gs->xmlFree = (xmlFreeFunc) xmlMemFree;
|
|
gs->xmlMalloc = (xmlMallocFunc) xmlMemMalloc;
|
|
gs->xmlRealloc = (xmlReallocFunc) xmlMemRealloc;
|
|
gs->xmlMemStrdup = (xmlStrdupFunc) xmlMemoryStrdup;
|
|
#else
|
|
gs->xmlFree = (xmlFreeFunc) free;
|
|
gs->xmlMalloc = (xmlMallocFunc) malloc;
|
|
gs->xmlRealloc = (xmlReallocFunc) realloc;
|
|
gs->xmlMemStrdup = (xmlStrdupFunc) xmlStrdup;
|
|
#endif
|
|
gs->xmlGenericErrorContext = NULL;
|
|
gs->xmlGetWarningsDefaultValue = 1;
|
|
gs->xmlIndentTreeOutput = 1;
|
|
gs->xmlTreeIndentString = " ";
|
|
gs->xmlKeepBlanksDefaultValue = 1;
|
|
gs->xmlLineNumbersDefaultValue = 0;
|
|
gs->xmlLoadExtDtdDefaultValue = 0;
|
|
gs->xmlParserDebugEntities = 0;
|
|
gs->xmlParserVersion = LIBXML_VERSION_STRING;
|
|
gs->xmlPedanticParserDefaultValue = 0;
|
|
gs->xmlSaveNoEmptyTags = 0;
|
|
gs->xmlSubstituteEntitiesDefaultValue = 0;
|
|
|
|
gs->xmlRegisterNodeDefaultValue = NULL;
|
|
gs->xmlDeregisterNodeDefaultValue = NULL;
|
|
}
|
|
|
|
/**
|
|
* xmlRegisterNodeDefault:
|
|
* @func: function pointer to the new RegisterNodeFunc
|
|
*
|
|
* Registers a callback for node creation
|
|
*
|
|
* Returns the old value of the registration function
|
|
*/
|
|
xmlRegisterNodeFunc
|
|
xmlRegisterNodeDefault(xmlRegisterNodeFunc func)
|
|
{
|
|
xmlRegisterNodeFunc old = xmlRegisterNodeDefaultValue;
|
|
|
|
xmlRegisterNodeDefaultValue = func;
|
|
return(old);
|
|
}
|
|
|
|
/**
|
|
* xmlDeregisterNodeDefault:
|
|
* @func: function pointer to the new DeregisterNodeFunc
|
|
*
|
|
* Registers a callback for node destruction
|
|
*
|
|
* Returns the previous value of the deregistration function
|
|
*/
|
|
xmlDeregisterNodeFunc
|
|
xmlDeregisterNodeDefault(xmlDeregisterNodeFunc func)
|
|
{
|
|
xmlDeregisterNodeFunc old = xmlDeregisterNodeDefaultValue;
|
|
|
|
xmlDeregisterNodeDefaultValue = func;
|
|
return(old);
|
|
}
|
|
|
|
|
|
#ifdef LIBXML_DOCB_ENABLED
|
|
#undef docbDefaultSAXHandler
|
|
xmlSAXHandler *
|
|
__docbDefaultSAXHandler(void) {
|
|
if (IS_MAIN_THREAD)
|
|
return (&docbDefaultSAXHandler);
|
|
else
|
|
return (&xmlGetGlobalState()->docbDefaultSAXHandler);
|
|
}
|
|
#endif
|
|
|
|
#ifdef LIBXML_HTML_ENABLED
|
|
#undef htmlDefaultSAXHandler
|
|
xmlSAXHandler *
|
|
__htmlDefaultSAXHandler(void) {
|
|
if (IS_MAIN_THREAD)
|
|
return (&htmlDefaultSAXHandler);
|
|
else
|
|
return (&xmlGetGlobalState()->htmlDefaultSAXHandler);
|
|
}
|
|
#endif
|
|
|
|
/*
|
|
* Everything starting from the line below is
|
|
* Automatically generated by build_glob.py.
|
|
* Do not modify the previous line.
|
|
*/
|
|
|
|
|
|
#undef oldXMLWDcompatibility
|
|
int *
|
|
__oldXMLWDcompatibility(void) {
|
|
if (IS_MAIN_THREAD)
|
|
return (&oldXMLWDcompatibility);
|
|
else
|
|
return (&xmlGetGlobalState()->oldXMLWDcompatibility);
|
|
}
|
|
|
|
#undef xmlBufferAllocScheme
|
|
xmlBufferAllocationScheme *
|
|
__xmlBufferAllocScheme(void) {
|
|
if (IS_MAIN_THREAD)
|
|
return (&xmlBufferAllocScheme);
|
|
else
|
|
return (&xmlGetGlobalState()->xmlBufferAllocScheme);
|
|
}
|
|
|
|
#undef xmlDefaultBufferSize
|
|
int *
|
|
__xmlDefaultBufferSize(void) {
|
|
if (IS_MAIN_THREAD)
|
|
return (&xmlDefaultBufferSize);
|
|
else
|
|
return (&xmlGetGlobalState()->xmlDefaultBufferSize);
|
|
}
|
|
|
|
#undef xmlDefaultSAXHandler
|
|
xmlSAXHandler *
|
|
__xmlDefaultSAXHandler(void) {
|
|
if (IS_MAIN_THREAD)
|
|
return (&xmlDefaultSAXHandler);
|
|
else
|
|
return (&xmlGetGlobalState()->xmlDefaultSAXHandler);
|
|
}
|
|
|
|
#undef xmlDefaultSAXLocator
|
|
xmlSAXLocator *
|
|
__xmlDefaultSAXLocator(void) {
|
|
if (IS_MAIN_THREAD)
|
|
return (&xmlDefaultSAXLocator);
|
|
else
|
|
return (&xmlGetGlobalState()->xmlDefaultSAXLocator);
|
|
}
|
|
|
|
#undef xmlDoValidityCheckingDefaultValue
|
|
int *
|
|
__xmlDoValidityCheckingDefaultValue(void) {
|
|
if (IS_MAIN_THREAD)
|
|
return (&xmlDoValidityCheckingDefaultValue);
|
|
else
|
|
return (&xmlGetGlobalState()->xmlDoValidityCheckingDefaultValue);
|
|
}
|
|
|
|
#undef xmlGenericError
|
|
xmlGenericErrorFunc *
|
|
__xmlGenericError(void) {
|
|
if (IS_MAIN_THREAD)
|
|
return (&xmlGenericError);
|
|
else
|
|
return (&xmlGetGlobalState()->xmlGenericError);
|
|
}
|
|
|
|
#undef xmlGenericErrorContext
|
|
void * *
|
|
__xmlGenericErrorContext(void) {
|
|
if (IS_MAIN_THREAD)
|
|
return (&xmlGenericErrorContext);
|
|
else
|
|
return (&xmlGetGlobalState()->xmlGenericErrorContext);
|
|
}
|
|
|
|
#undef xmlGetWarningsDefaultValue
|
|
int *
|
|
__xmlGetWarningsDefaultValue(void) {
|
|
if (IS_MAIN_THREAD)
|
|
return (&xmlGetWarningsDefaultValue);
|
|
else
|
|
return (&xmlGetGlobalState()->xmlGetWarningsDefaultValue);
|
|
}
|
|
|
|
#undef xmlIndentTreeOutput
|
|
int *
|
|
__xmlIndentTreeOutput(void) {
|
|
if (IS_MAIN_THREAD)
|
|
return (&xmlIndentTreeOutput);
|
|
else
|
|
return (&xmlGetGlobalState()->xmlIndentTreeOutput);
|
|
}
|
|
|
|
#undef xmlTreeIndentString
|
|
const char * *
|
|
__xmlTreeIndentString(void) {
|
|
if (IS_MAIN_THREAD)
|
|
return (&xmlTreeIndentString);
|
|
else
|
|
return (&xmlGetGlobalState()->xmlTreeIndentString);
|
|
}
|
|
|
|
#undef xmlKeepBlanksDefaultValue
|
|
int *
|
|
__xmlKeepBlanksDefaultValue(void) {
|
|
if (IS_MAIN_THREAD)
|
|
return (&xmlKeepBlanksDefaultValue);
|
|
else
|
|
return (&xmlGetGlobalState()->xmlKeepBlanksDefaultValue);
|
|
}
|
|
|
|
#undef xmlLineNumbersDefaultValue
|
|
int *
|
|
__xmlLineNumbersDefaultValue(void) {
|
|
if (IS_MAIN_THREAD)
|
|
return (&xmlLineNumbersDefaultValue);
|
|
else
|
|
return (&xmlGetGlobalState()->xmlLineNumbersDefaultValue);
|
|
}
|
|
|
|
#undef xmlLoadExtDtdDefaultValue
|
|
int *
|
|
__xmlLoadExtDtdDefaultValue(void) {
|
|
if (IS_MAIN_THREAD)
|
|
return (&xmlLoadExtDtdDefaultValue);
|
|
else
|
|
return (&xmlGetGlobalState()->xmlLoadExtDtdDefaultValue);
|
|
}
|
|
|
|
#undef xmlParserDebugEntities
|
|
int *
|
|
__xmlParserDebugEntities(void) {
|
|
if (IS_MAIN_THREAD)
|
|
return (&xmlParserDebugEntities);
|
|
else
|
|
return (&xmlGetGlobalState()->xmlParserDebugEntities);
|
|
}
|
|
|
|
#undef xmlParserVersion
|
|
const char * *
|
|
__xmlParserVersion(void) {
|
|
if (IS_MAIN_THREAD)
|
|
return (&xmlParserVersion);
|
|
else
|
|
return (&xmlGetGlobalState()->xmlParserVersion);
|
|
}
|
|
|
|
#undef xmlPedanticParserDefaultValue
|
|
int *
|
|
__xmlPedanticParserDefaultValue(void) {
|
|
if (IS_MAIN_THREAD)
|
|
return (&xmlPedanticParserDefaultValue);
|
|
else
|
|
return (&xmlGetGlobalState()->xmlPedanticParserDefaultValue);
|
|
}
|
|
|
|
#undef xmlSaveNoEmptyTags
|
|
int *
|
|
__xmlSaveNoEmptyTags(void) {
|
|
if (IS_MAIN_THREAD)
|
|
return (&xmlSaveNoEmptyTags);
|
|
else
|
|
return (&xmlGetGlobalState()->xmlSaveNoEmptyTags);
|
|
}
|
|
|
|
#undef xmlSubstituteEntitiesDefaultValue
|
|
int *
|
|
__xmlSubstituteEntitiesDefaultValue(void) {
|
|
if (IS_MAIN_THREAD)
|
|
return (&xmlSubstituteEntitiesDefaultValue);
|
|
else
|
|
return (&xmlGetGlobalState()->xmlSubstituteEntitiesDefaultValue);
|
|
}
|
|
|
|
#undef xmlRegisterNodeDefaultValue
|
|
xmlRegisterNodeFunc *
|
|
__xmlRegisterNodeDefaultValue(void) {
|
|
if (IS_MAIN_THREAD)
|
|
return (&xmlRegisterNodeDefaultValue);
|
|
else
|
|
return (&xmlGetGlobalState()->xmlRegisterNodeDefaultValue);
|
|
}
|
|
|
|
#undef xmlDeregisterNodeDefaultValue
|
|
xmlDeregisterNodeFunc *
|
|
__xmlDeregisterNodeDefaultValue(void) {
|
|
if (IS_MAIN_THREAD)
|
|
return (&xmlDeregisterNodeDefaultValue);
|
|
else
|
|
return (&xmlGetGlobalState()->xmlDeregisterNodeDefaultValue);
|
|
}
|