Blame globals.c

Packit Service a31ea6
/*
Packit Service a31ea6
 * globals.c: definition and handling of the set of global variables
Packit Service a31ea6
 *            of the library
Packit Service a31ea6
 *
Packit Service a31ea6
 * The bottom of this file is automatically generated by build_glob.py
Packit Service a31ea6
 * based on the description file global.data
Packit Service a31ea6
 *
Packit Service a31ea6
 * See Copyright for the status of this software.
Packit Service a31ea6
 *
Packit Service a31ea6
 * Gary Pennington <Gary.Pennington@uk.sun.com>
Packit Service a31ea6
 * daniel@veillard.com
Packit Service a31ea6
 */
Packit Service a31ea6
Packit Service a31ea6
#define IN_LIBXML
Packit Service a31ea6
#include "libxml.h"
Packit Service a31ea6
Packit Service a31ea6
#ifdef HAVE_STDLIB_H
Packit Service a31ea6
#include <stdlib.h>
Packit Service a31ea6
#endif
Packit Service a31ea6
#include <string.h>
Packit Service a31ea6
Packit Service a31ea6
#include <libxml/globals.h>
Packit Service a31ea6
#include <libxml/xmlmemory.h>
Packit Service a31ea6
#include <libxml/threads.h>
Packit Service a31ea6
Packit Service a31ea6
/* #define DEBUG_GLOBALS */
Packit Service a31ea6
Packit Service a31ea6
/*
Packit Service a31ea6
 * Helpful Macro
Packit Service a31ea6
 */
Packit Service a31ea6
#ifdef LIBXML_THREAD_ENABLED
Packit Service a31ea6
#define IS_MAIN_THREAD (xmlIsMainThread())
Packit Service a31ea6
#else
Packit Service a31ea6
#define IS_MAIN_THREAD 1
Packit Service a31ea6
#endif
Packit Service a31ea6
Packit Service a31ea6
/*
Packit Service a31ea6
 * Mutex to protect "ForNewThreads" variables
Packit Service a31ea6
 */
Packit Service a31ea6
static xmlMutexPtr xmlThrDefMutex = NULL;
Packit Service a31ea6
Packit Service a31ea6
/**
Packit Service a31ea6
 * xmlInitGlobals:
Packit Service a31ea6
 *
Packit Service a31ea6
 * Additional initialisation for multi-threading
Packit Service a31ea6
 */
Packit Service a31ea6
void xmlInitGlobals(void)
Packit Service a31ea6
{
Packit Service a31ea6
    if (xmlThrDefMutex == NULL)
Packit Service a31ea6
        xmlThrDefMutex = xmlNewMutex();
Packit Service a31ea6
}
Packit Service a31ea6
Packit Service a31ea6
/**
Packit Service a31ea6
 * xmlCleanupGlobals:
Packit Service a31ea6
 *
Packit Service a31ea6
 * Additional cleanup for multi-threading
Packit Service a31ea6
 */
Packit Service a31ea6
void xmlCleanupGlobals(void)
Packit Service a31ea6
{
Packit Service a31ea6
    if (xmlThrDefMutex != NULL) {
Packit Service a31ea6
	xmlFreeMutex(xmlThrDefMutex);
Packit Service a31ea6
	xmlThrDefMutex = NULL;
Packit Service a31ea6
    }
Packit Service a31ea6
    __xmlGlobalInitMutexDestroy();
Packit Service a31ea6
}
Packit Service a31ea6
Packit Service a31ea6
/************************************************************************
Packit Service a31ea6
 *									*
Packit Service a31ea6
 *	All the user accessible global variables of the library		*
Packit Service a31ea6
 *									*
Packit Service a31ea6
 ************************************************************************/
Packit Service a31ea6
Packit Service a31ea6
/*
Packit Service a31ea6
 * Memory allocation routines
Packit Service a31ea6
 */
Packit Service a31ea6
#undef	xmlFree
Packit Service a31ea6
#undef	xmlMalloc
Packit Service a31ea6
#undef	xmlMallocAtomic
Packit Service a31ea6
#undef	xmlMemStrdup
Packit Service a31ea6
#undef	xmlRealloc
Packit Service a31ea6
Packit Service a31ea6
#if defined(DEBUG_MEMORY_LOCATION) || defined(DEBUG_MEMORY)
Packit Service a31ea6
xmlFreeFunc xmlFree = (xmlFreeFunc) xmlMemFree;
Packit Service a31ea6
xmlMallocFunc xmlMalloc = (xmlMallocFunc) xmlMemMalloc;
Packit Service a31ea6
xmlMallocFunc xmlMallocAtomic = (xmlMallocFunc) xmlMemMalloc;
Packit Service a31ea6
xmlReallocFunc xmlRealloc = (xmlReallocFunc) xmlMemRealloc;
Packit Service a31ea6
xmlStrdupFunc xmlMemStrdup = (xmlStrdupFunc) xmlMemoryStrdup;
Packit Service a31ea6
#else
Packit Service a31ea6
/**
Packit Service a31ea6
 * xmlFree:
Packit Service a31ea6
 * @mem: an already allocated block of memory
Packit Service a31ea6
 *
Packit Service a31ea6
 * The variable holding the libxml free() implementation
Packit Service a31ea6
 */
Packit Service a31ea6
xmlFreeFunc xmlFree = (xmlFreeFunc) free;
Packit Service a31ea6
/**
Packit Service a31ea6
 * xmlMalloc:
Packit Service a31ea6
 * @size:  the size requested in bytes
Packit Service a31ea6
 *
Packit Service a31ea6
 * The variable holding the libxml malloc() implementation
Packit Service a31ea6
 *
Packit Service a31ea6
 * Returns a pointer to the newly allocated block or NULL in case of error
Packit Service a31ea6
 */
Packit Service a31ea6
xmlMallocFunc xmlMalloc = (xmlMallocFunc) malloc;
Packit Service a31ea6
/**
Packit Service a31ea6
 * xmlMallocAtomic:
Packit Service a31ea6
 * @size:  the size requested in bytes
Packit Service a31ea6
 *
Packit Service a31ea6
 * The variable holding the libxml malloc() implementation for atomic
Packit Service a31ea6
 * data (i.e. blocks not containings pointers), useful when using a
Packit Service a31ea6
 * garbage collecting allocator.
Packit Service a31ea6
 *
Packit Service a31ea6
 * Returns a pointer to the newly allocated block or NULL in case of error
Packit Service a31ea6
 */
Packit Service a31ea6
xmlMallocFunc xmlMallocAtomic = (xmlMallocFunc) malloc;
Packit Service a31ea6
/**
Packit Service a31ea6
 * xmlRealloc:
Packit Service a31ea6
 * @mem: an already allocated block of memory
Packit Service a31ea6
 * @size:  the new size requested in bytes
Packit Service a31ea6
 *
Packit Service a31ea6
 * The variable holding the libxml realloc() implementation
Packit Service a31ea6
 *
Packit Service a31ea6
 * Returns a pointer to the newly reallocated block or NULL in case of error
Packit Service a31ea6
 */
Packit Service a31ea6
xmlReallocFunc xmlRealloc = (xmlReallocFunc) realloc;
Packit Service a31ea6
/**
Packit Service a31ea6
 * xmlMemStrdup:
Packit Service a31ea6
 * @str: a zero terminated string
Packit Service a31ea6
 *
Packit Service a31ea6
 * The variable holding the libxml strdup() implementation
Packit Service a31ea6
 *
Packit Service a31ea6
 * Returns the copy of the string or NULL in case of error
Packit Service a31ea6
 */
Packit Service a31ea6
xmlStrdupFunc xmlMemStrdup = (xmlStrdupFunc) xmlStrdup;
Packit Service a31ea6
#endif /* DEBUG_MEMORY_LOCATION || DEBUG_MEMORY */
Packit Service a31ea6
Packit Service a31ea6
#include <libxml/threads.h>
Packit Service a31ea6
#include <libxml/globals.h>
Packit Service a31ea6
#include <libxml/SAX.h>
Packit Service a31ea6
Packit Service a31ea6
#undef	docbDefaultSAXHandler
Packit Service a31ea6
#undef	htmlDefaultSAXHandler
Packit Service a31ea6
#undef	oldXMLWDcompatibility
Packit Service a31ea6
#undef	xmlBufferAllocScheme
Packit Service a31ea6
#undef	xmlDefaultBufferSize
Packit Service a31ea6
#undef	xmlDefaultSAXHandler
Packit Service a31ea6
#undef	xmlDefaultSAXLocator
Packit Service a31ea6
#undef	xmlDoValidityCheckingDefaultValue
Packit Service a31ea6
#undef	xmlGenericError
Packit Service a31ea6
#undef	xmlStructuredError
Packit Service a31ea6
#undef	xmlGenericErrorContext
Packit Service a31ea6
#undef	xmlStructuredErrorContext
Packit Service a31ea6
#undef	xmlGetWarningsDefaultValue
Packit Service a31ea6
#undef	xmlIndentTreeOutput
Packit Service a31ea6
#undef  xmlTreeIndentString
Packit Service a31ea6
#undef	xmlKeepBlanksDefaultValue
Packit Service a31ea6
#undef	xmlLineNumbersDefaultValue
Packit Service a31ea6
#undef	xmlLoadExtDtdDefaultValue
Packit Service a31ea6
#undef	xmlParserDebugEntities
Packit Service a31ea6
#undef	xmlParserVersion
Packit Service a31ea6
#undef	xmlPedanticParserDefaultValue
Packit Service a31ea6
#undef	xmlSaveNoEmptyTags
Packit Service a31ea6
#undef	xmlSubstituteEntitiesDefaultValue
Packit Service a31ea6
#undef	xmlRegisterNodeDefaultValue
Packit Service a31ea6
#undef	xmlDeregisterNodeDefaultValue
Packit Service a31ea6
#undef	xmlLastError
Packit Service a31ea6
Packit Service a31ea6
#undef  xmlParserInputBufferCreateFilenameValue
Packit Service a31ea6
#undef  xmlOutputBufferCreateFilenameValue
Packit Service a31ea6
/**
Packit Service a31ea6
 * xmlParserVersion:
Packit Service a31ea6
 *
Packit Service a31ea6
 * Constant string describing the internal version of the library
Packit Service a31ea6
 */
Packit Service a31ea6
const char *xmlParserVersion = LIBXML_VERSION_STRING LIBXML_VERSION_EXTRA;
Packit Service a31ea6
Packit Service a31ea6
/**
Packit Service a31ea6
 * xmlBufferAllocScheme:
Packit Service a31ea6
 *
Packit Service a31ea6
 * Global setting, default allocation policy for buffers, default is
Packit Service a31ea6
 * XML_BUFFER_ALLOC_EXACT
Packit Service a31ea6
 */
Packit Service a31ea6
xmlBufferAllocationScheme xmlBufferAllocScheme = XML_BUFFER_ALLOC_EXACT;
Packit Service a31ea6
static xmlBufferAllocationScheme xmlBufferAllocSchemeThrDef = XML_BUFFER_ALLOC_EXACT;
Packit Service a31ea6
/**
Packit Service a31ea6
 * xmlDefaultBufferSize:
Packit Service a31ea6
 *
Packit Service a31ea6
 * Global setting, default buffer size. Default value is BASE_BUFFER_SIZE
Packit Service a31ea6
 */
Packit Service a31ea6
int xmlDefaultBufferSize = BASE_BUFFER_SIZE;
Packit Service a31ea6
static int xmlDefaultBufferSizeThrDef = BASE_BUFFER_SIZE;
Packit Service a31ea6
Packit Service a31ea6
/*
Packit Service a31ea6
 * Parser defaults
Packit Service a31ea6
 */
Packit Service a31ea6
Packit Service a31ea6
/**
Packit Service a31ea6
 * oldXMLWDcompatibility:
Packit Service a31ea6
 *
Packit Service a31ea6
 * Global setting, DEPRECATED.
Packit Service a31ea6
 */
Packit Service a31ea6
int oldXMLWDcompatibility = 0; /* DEPRECATED */
Packit Service a31ea6
/**
Packit Service a31ea6
 * xmlParserDebugEntities:
Packit Service a31ea6
 *
Packit Service a31ea6
 * Global setting, asking the parser to print out debugging informations.
Packit Service a31ea6
 * while handling entities.
Packit Service a31ea6
 * Disabled by default
Packit Service a31ea6
 */
Packit Service a31ea6
int xmlParserDebugEntities = 0;
Packit Service a31ea6
static int xmlParserDebugEntitiesThrDef = 0;
Packit Service a31ea6
/**
Packit Service a31ea6
 * xmlDoValidityCheckingDefaultValue:
Packit Service a31ea6
 *
Packit Service a31ea6
 * Global setting, indicate that the parser should work in validating mode.
Packit Service a31ea6
 * Disabled by default.
Packit Service a31ea6
 */
Packit Service a31ea6
int xmlDoValidityCheckingDefaultValue = 0;
Packit Service a31ea6
static int xmlDoValidityCheckingDefaultValueThrDef = 0;
Packit Service a31ea6
/**
Packit Service a31ea6
 * xmlGetWarningsDefaultValue:
Packit Service a31ea6
 *
Packit Service a31ea6
 * Global setting, indicate that the parser should provide warnings.
Packit Service a31ea6
 * Activated by default.
Packit Service a31ea6
 */
Packit Service a31ea6
int xmlGetWarningsDefaultValue = 1;
Packit Service a31ea6
static int xmlGetWarningsDefaultValueThrDef = 1;
Packit Service a31ea6
/**
Packit Service a31ea6
 * xmlLoadExtDtdDefaultValue:
Packit Service a31ea6
 *
Packit Service a31ea6
 * Global setting, indicate that the parser should load DTD while not
Packit Service a31ea6
 * validating.
Packit Service a31ea6
 * Disabled by default.
Packit Service a31ea6
 */
Packit Service a31ea6
int xmlLoadExtDtdDefaultValue = 0;
Packit Service a31ea6
static int xmlLoadExtDtdDefaultValueThrDef = 0;
Packit Service a31ea6
/**
Packit Service a31ea6
 * xmlPedanticParserDefaultValue:
Packit Service a31ea6
 *
Packit Service a31ea6
 * Global setting, indicate that the parser be pedantic
Packit Service a31ea6
 * Disabled by default.
Packit Service a31ea6
 */
Packit Service a31ea6
int xmlPedanticParserDefaultValue = 0;
Packit Service a31ea6
static int xmlPedanticParserDefaultValueThrDef = 0;
Packit Service a31ea6
/**
Packit Service a31ea6
 * xmlLineNumbersDefaultValue:
Packit Service a31ea6
 *
Packit Service a31ea6
 * Global setting, indicate that the parser should store the line number
Packit Service a31ea6
 * in the content field of elements in the DOM tree.
Packit Service a31ea6
 * Disabled by default since this may not be safe for old classes of
Packit Service a31ea6
 * applicaton.
Packit Service a31ea6
 */
Packit Service a31ea6
int xmlLineNumbersDefaultValue = 0;
Packit Service a31ea6
static int xmlLineNumbersDefaultValueThrDef = 0;
Packit Service a31ea6
/**
Packit Service a31ea6
 * xmlKeepBlanksDefaultValue:
Packit Service a31ea6
 *
Packit Service a31ea6
 * Global setting, indicate that the parser should keep all blanks
Packit Service a31ea6
 * nodes found in the content
Packit Service a31ea6
 * Activated by default, this is actually needed to have the parser
Packit Service a31ea6
 * conformant to the XML Recommendation, however the option is kept
Packit Service a31ea6
 * for some applications since this was libxml1 default behaviour.
Packit Service a31ea6
 */
Packit Service a31ea6
int xmlKeepBlanksDefaultValue = 1;
Packit Service a31ea6
static int xmlKeepBlanksDefaultValueThrDef = 1;
Packit Service a31ea6
/**
Packit Service a31ea6
 * xmlSubstituteEntitiesDefaultValue:
Packit Service a31ea6
 *
Packit Service a31ea6
 * Global setting, indicate that the parser should not generate entity
Packit Service a31ea6
 * references but replace them with the actual content of the entity
Packit Service a31ea6
 * Disabled by default, this should be activated when using XPath since
Packit Service a31ea6
 * the XPath data model requires entities replacement and the XPath
Packit Service a31ea6
 * engine does not handle entities references transparently.
Packit Service a31ea6
 */
Packit Service a31ea6
int xmlSubstituteEntitiesDefaultValue = 0;
Packit Service a31ea6
static int xmlSubstituteEntitiesDefaultValueThrDef = 0;
Packit Service a31ea6
Packit Service a31ea6
xmlRegisterNodeFunc xmlRegisterNodeDefaultValue = NULL;
Packit Service a31ea6
static xmlRegisterNodeFunc xmlRegisterNodeDefaultValueThrDef = NULL;
Packit Service a31ea6
xmlDeregisterNodeFunc xmlDeregisterNodeDefaultValue = NULL;
Packit Service a31ea6
static xmlDeregisterNodeFunc xmlDeregisterNodeDefaultValueThrDef = NULL;
Packit Service a31ea6
Packit Service a31ea6
xmlParserInputBufferCreateFilenameFunc xmlParserInputBufferCreateFilenameValue = NULL;
Packit Service a31ea6
static xmlParserInputBufferCreateFilenameFunc xmlParserInputBufferCreateFilenameValueThrDef = NULL;
Packit Service a31ea6
Packit Service a31ea6
xmlOutputBufferCreateFilenameFunc xmlOutputBufferCreateFilenameValue = NULL;
Packit Service a31ea6
static xmlOutputBufferCreateFilenameFunc xmlOutputBufferCreateFilenameValueThrDef = NULL;
Packit Service a31ea6
Packit Service a31ea6
/*
Packit Service a31ea6
 * Error handling
Packit Service a31ea6
 */
Packit Service a31ea6
Packit Service a31ea6
/* xmlGenericErrorFunc xmlGenericError = xmlGenericErrorDefaultFunc; */
Packit Service a31ea6
/* Must initialize xmlGenericError in xmlInitParser */
Packit Service a31ea6
void XMLCDECL xmlGenericErrorDefaultFunc	(void *ctx ATTRIBUTE_UNUSED,
Packit Service a31ea6
				 const char *msg,
Packit Service a31ea6
				 ...);
Packit Service a31ea6
/**
Packit Service a31ea6
 * xmlGenericError:
Packit Service a31ea6
 *
Packit Service a31ea6
 * Global setting: function used for generic error callbacks
Packit Service a31ea6
 */
Packit Service a31ea6
xmlGenericErrorFunc xmlGenericError = xmlGenericErrorDefaultFunc;
Packit Service a31ea6
static xmlGenericErrorFunc xmlGenericErrorThrDef = xmlGenericErrorDefaultFunc;
Packit Service a31ea6
/**
Packit Service a31ea6
 * xmlStructuredError:
Packit Service a31ea6
 *
Packit Service a31ea6
 * Global setting: function used for structured error callbacks
Packit Service a31ea6
 */
Packit Service a31ea6
xmlStructuredErrorFunc xmlStructuredError = NULL;
Packit Service a31ea6
static xmlStructuredErrorFunc xmlStructuredErrorThrDef = NULL;
Packit Service a31ea6
/**
Packit Service a31ea6
 * xmlGenericErrorContext:
Packit Service a31ea6
 *
Packit Service a31ea6
 * Global setting passed to generic error callbacks
Packit Service a31ea6
 */
Packit Service a31ea6
void *xmlGenericErrorContext = NULL;
Packit Service a31ea6
static void *xmlGenericErrorContextThrDef = NULL;
Packit Service a31ea6
/**
Packit Service a31ea6
 * xmlStructuredErrorContext:
Packit Service a31ea6
 *
Packit Service a31ea6
 * Global setting passed to structured error callbacks
Packit Service a31ea6
 */
Packit Service a31ea6
void *xmlStructuredErrorContext = NULL;
Packit Service a31ea6
static void *xmlStructuredErrorContextThrDef = NULL;
Packit Service a31ea6
xmlError xmlLastError;
Packit Service a31ea6
Packit Service a31ea6
/*
Packit Service a31ea6
 * output defaults
Packit Service a31ea6
 */
Packit Service a31ea6
/**
Packit Service a31ea6
 * xmlIndentTreeOutput:
Packit Service a31ea6
 *
Packit Service a31ea6
 * Global setting, asking the serializer to indent the output tree by default
Packit Service a31ea6
 * Enabled by default
Packit Service a31ea6
 */
Packit Service a31ea6
int xmlIndentTreeOutput = 1;
Packit Service a31ea6
static int xmlIndentTreeOutputThrDef = 1;
Packit Service a31ea6
Packit Service a31ea6
/**
Packit Service a31ea6
 * xmlTreeIndentString:
Packit Service a31ea6
 *
Packit Service a31ea6
 * The string used to do one-level indent. By default is equal to "  " (two spaces)
Packit Service a31ea6
 */
Packit Service a31ea6
const char *xmlTreeIndentString = "  ";
Packit Service a31ea6
static const char *xmlTreeIndentStringThrDef = "  ";
Packit Service a31ea6
Packit Service a31ea6
/**
Packit Service a31ea6
 * xmlSaveNoEmptyTags:
Packit Service a31ea6
 *
Packit Service a31ea6
 * Global setting, asking the serializer to not output empty tags
Packit Service a31ea6
 * as <empty/> but <empty></empty>. those two forms are undistinguishable
Packit Service a31ea6
 * once parsed.
Packit Service a31ea6
 * Disabled by default
Packit Service a31ea6
 */
Packit Service a31ea6
int xmlSaveNoEmptyTags = 0;
Packit Service a31ea6
static int xmlSaveNoEmptyTagsThrDef = 0;
Packit Service a31ea6
Packit Service a31ea6
#ifdef LIBXML_SAX1_ENABLED
Packit Service a31ea6
/**
Packit Service a31ea6
 * xmlDefaultSAXHandler:
Packit Service a31ea6
 *
Packit Service a31ea6
 * Default SAX version1 handler for XML, builds the DOM tree
Packit Service a31ea6
 */
Packit Service a31ea6
xmlSAXHandlerV1 xmlDefaultSAXHandler = {
Packit Service a31ea6
    xmlSAX2InternalSubset,
Packit Service a31ea6
    xmlSAX2IsStandalone,
Packit Service a31ea6
    xmlSAX2HasInternalSubset,
Packit Service a31ea6
    xmlSAX2HasExternalSubset,
Packit Service a31ea6
    xmlSAX2ResolveEntity,
Packit Service a31ea6
    xmlSAX2GetEntity,
Packit Service a31ea6
    xmlSAX2EntityDecl,
Packit Service a31ea6
    xmlSAX2NotationDecl,
Packit Service a31ea6
    xmlSAX2AttributeDecl,
Packit Service a31ea6
    xmlSAX2ElementDecl,
Packit Service a31ea6
    xmlSAX2UnparsedEntityDecl,
Packit Service a31ea6
    xmlSAX2SetDocumentLocator,
Packit Service a31ea6
    xmlSAX2StartDocument,
Packit Service a31ea6
    xmlSAX2EndDocument,
Packit Service a31ea6
    xmlSAX2StartElement,
Packit Service a31ea6
    xmlSAX2EndElement,
Packit Service a31ea6
    xmlSAX2Reference,
Packit Service a31ea6
    xmlSAX2Characters,
Packit Service a31ea6
    xmlSAX2Characters,
Packit Service a31ea6
    xmlSAX2ProcessingInstruction,
Packit Service a31ea6
    xmlSAX2Comment,
Packit Service a31ea6
    xmlParserWarning,
Packit Service a31ea6
    xmlParserError,
Packit Service a31ea6
    xmlParserError,
Packit Service a31ea6
    xmlSAX2GetParameterEntity,
Packit Service a31ea6
    xmlSAX2CDataBlock,
Packit Service a31ea6
    xmlSAX2ExternalSubset,
Packit Service a31ea6
    0,
Packit Service a31ea6
};
Packit Service a31ea6
#endif /* LIBXML_SAX1_ENABLED */
Packit Service a31ea6
Packit Service a31ea6
/**
Packit Service a31ea6
 * xmlDefaultSAXLocator:
Packit Service a31ea6
 *
Packit Service a31ea6
 * The default SAX Locator
Packit Service a31ea6
 * { getPublicId, getSystemId, getLineNumber, getColumnNumber}
Packit Service a31ea6
 */
Packit Service a31ea6
xmlSAXLocator xmlDefaultSAXLocator = {
Packit Service a31ea6
    xmlSAX2GetPublicId,
Packit Service a31ea6
    xmlSAX2GetSystemId,
Packit Service a31ea6
    xmlSAX2GetLineNumber,
Packit Service a31ea6
    xmlSAX2GetColumnNumber
Packit Service a31ea6
};
Packit Service a31ea6
Packit Service a31ea6
#ifdef LIBXML_HTML_ENABLED
Packit Service a31ea6
/**
Packit Service a31ea6
 * htmlDefaultSAXHandler:
Packit Service a31ea6
 *
Packit Service a31ea6
 * Default old SAX v1 handler for HTML, builds the DOM tree
Packit Service a31ea6
 */
Packit Service a31ea6
xmlSAXHandlerV1 htmlDefaultSAXHandler = {
Packit Service a31ea6
    xmlSAX2InternalSubset,
Packit Service a31ea6
    NULL,
Packit Service a31ea6
    NULL,
Packit Service a31ea6
    NULL,
Packit Service a31ea6
    NULL,
Packit Service a31ea6
    xmlSAX2GetEntity,
Packit Service a31ea6
    NULL,
Packit Service a31ea6
    NULL,
Packit Service a31ea6
    NULL,
Packit Service a31ea6
    NULL,
Packit Service a31ea6
    NULL,
Packit Service a31ea6
    xmlSAX2SetDocumentLocator,
Packit Service a31ea6
    xmlSAX2StartDocument,
Packit Service a31ea6
    xmlSAX2EndDocument,
Packit Service a31ea6
    xmlSAX2StartElement,
Packit Service a31ea6
    xmlSAX2EndElement,
Packit Service a31ea6
    NULL,
Packit Service a31ea6
    xmlSAX2Characters,
Packit Service a31ea6
    xmlSAX2IgnorableWhitespace,
Packit Service a31ea6
    xmlSAX2ProcessingInstruction,
Packit Service a31ea6
    xmlSAX2Comment,
Packit Service a31ea6
    xmlParserWarning,
Packit Service a31ea6
    xmlParserError,
Packit Service a31ea6
    xmlParserError,
Packit Service a31ea6
    xmlSAX2GetParameterEntity,
Packit Service a31ea6
    xmlSAX2CDataBlock,
Packit Service a31ea6
    NULL,
Packit Service a31ea6
    0,
Packit Service a31ea6
};
Packit Service a31ea6
#endif /* LIBXML_HTML_ENABLED */
Packit Service a31ea6
Packit Service a31ea6
#ifdef LIBXML_DOCB_ENABLED
Packit Service a31ea6
/**
Packit Service a31ea6
 * docbDefaultSAXHandler:
Packit Service a31ea6
 *
Packit Service a31ea6
 * Default old SAX v1 handler for SGML DocBook, builds the DOM tree
Packit Service a31ea6
 */
Packit Service a31ea6
xmlSAXHandlerV1 docbDefaultSAXHandler = {
Packit Service a31ea6
    xmlSAX2InternalSubset,
Packit Service a31ea6
    xmlSAX2IsStandalone,
Packit Service a31ea6
    xmlSAX2HasInternalSubset,
Packit Service a31ea6
    xmlSAX2HasExternalSubset,
Packit Service a31ea6
    xmlSAX2ResolveEntity,
Packit Service a31ea6
    xmlSAX2GetEntity,
Packit Service a31ea6
    xmlSAX2EntityDecl,
Packit Service a31ea6
    NULL,
Packit Service a31ea6
    NULL,
Packit Service a31ea6
    NULL,
Packit Service a31ea6
    NULL,
Packit Service a31ea6
    xmlSAX2SetDocumentLocator,
Packit Service a31ea6
    xmlSAX2StartDocument,
Packit Service a31ea6
    xmlSAX2EndDocument,
Packit Service a31ea6
    xmlSAX2StartElement,
Packit Service a31ea6
    xmlSAX2EndElement,
Packit Service a31ea6
    xmlSAX2Reference,
Packit Service a31ea6
    xmlSAX2Characters,
Packit Service a31ea6
    xmlSAX2IgnorableWhitespace,
Packit Service a31ea6
    NULL,
Packit Service a31ea6
    xmlSAX2Comment,
Packit Service a31ea6
    xmlParserWarning,
Packit Service a31ea6
    xmlParserError,
Packit Service a31ea6
    xmlParserError,
Packit Service a31ea6
    xmlSAX2GetParameterEntity,
Packit Service a31ea6
    NULL,
Packit Service a31ea6
    NULL,
Packit Service a31ea6
    0,
Packit Service a31ea6
};
Packit Service a31ea6
#endif /* LIBXML_DOCB_ENABLED */
Packit Service a31ea6
Packit Service a31ea6
/**
Packit Service a31ea6
 * xmlInitializeGlobalState:
Packit Service a31ea6
 * @gs: a pointer to a newly allocated global state
Packit Service a31ea6
 *
Packit Service a31ea6
 * xmlInitializeGlobalState() initialize a global state with all the
Packit Service a31ea6
 * default values of the library.
Packit Service a31ea6
 */
Packit Service a31ea6
void
Packit Service a31ea6
xmlInitializeGlobalState(xmlGlobalStatePtr gs)
Packit Service a31ea6
{
Packit Service a31ea6
#ifdef DEBUG_GLOBALS
Packit Service a31ea6
    fprintf(stderr, "Initializing globals at %lu for thread %d\n",
Packit Service a31ea6
	    (unsigned long) gs, xmlGetThreadId());
Packit Service a31ea6
#endif
Packit Service a31ea6
Packit Service a31ea6
    /*
Packit Service a31ea6
     * Perform initialization as required by libxml
Packit Service a31ea6
     */
Packit Service a31ea6
    if (xmlThrDefMutex == NULL)
Packit Service a31ea6
        xmlInitGlobals();
Packit Service a31ea6
Packit Service a31ea6
    xmlMutexLock(xmlThrDefMutex);
Packit Service a31ea6
Packit Service a31ea6
#if defined(LIBXML_DOCB_ENABLED) && defined(LIBXML_LEGACY_ENABLED) && defined(LIBXML_SAX1_ENABLED)
Packit Service a31ea6
    initdocbDefaultSAXHandler(&gs->docbDefaultSAXHandler);
Packit Service a31ea6
#endif
Packit Service a31ea6
#if defined(LIBXML_HTML_ENABLED) && defined(LIBXML_LEGACY_ENABLED) && defined(LIBXML_SAX1_ENABLED)
Packit Service a31ea6
    inithtmlDefaultSAXHandler(&gs->htmlDefaultSAXHandler);
Packit Service a31ea6
#endif
Packit Service a31ea6
Packit Service a31ea6
    gs->oldXMLWDcompatibility = 0;
Packit Service a31ea6
    gs->xmlBufferAllocScheme = xmlBufferAllocSchemeThrDef;
Packit Service a31ea6
    gs->xmlDefaultBufferSize = xmlDefaultBufferSizeThrDef;
Packit Service a31ea6
#if defined(LIBXML_SAX1_ENABLED) && defined(LIBXML_LEGACY_ENABLED)
Packit Service a31ea6
    initxmlDefaultSAXHandler(&gs->xmlDefaultSAXHandler, 1);
Packit Service a31ea6
#endif /* LIBXML_SAX1_ENABLED */
Packit Service a31ea6
    gs->xmlDefaultSAXLocator.getPublicId = xmlSAX2GetPublicId;
Packit Service a31ea6
    gs->xmlDefaultSAXLocator.getSystemId = xmlSAX2GetSystemId;
Packit Service a31ea6
    gs->xmlDefaultSAXLocator.getLineNumber = xmlSAX2GetLineNumber;
Packit Service a31ea6
    gs->xmlDefaultSAXLocator.getColumnNumber = xmlSAX2GetColumnNumber;
Packit Service a31ea6
    gs->xmlDoValidityCheckingDefaultValue =
Packit Service a31ea6
         xmlDoValidityCheckingDefaultValueThrDef;
Packit Service a31ea6
#if defined(DEBUG_MEMORY_LOCATION) | defined(DEBUG_MEMORY)
Packit Service a31ea6
    gs->xmlFree = (xmlFreeFunc) xmlMemFree;
Packit Service a31ea6
    gs->xmlMalloc = (xmlMallocFunc) xmlMemMalloc;
Packit Service a31ea6
    gs->xmlMallocAtomic = (xmlMallocFunc) xmlMemMalloc;
Packit Service a31ea6
    gs->xmlRealloc = (xmlReallocFunc) xmlMemRealloc;
Packit Service a31ea6
    gs->xmlMemStrdup = (xmlStrdupFunc) xmlMemoryStrdup;
Packit Service a31ea6
#else
Packit Service a31ea6
    gs->xmlFree = (xmlFreeFunc) free;
Packit Service a31ea6
    gs->xmlMalloc = (xmlMallocFunc) malloc;
Packit Service a31ea6
    gs->xmlMallocAtomic = (xmlMallocFunc) malloc;
Packit Service a31ea6
    gs->xmlRealloc = (xmlReallocFunc) realloc;
Packit Service a31ea6
    gs->xmlMemStrdup = (xmlStrdupFunc) xmlStrdup;
Packit Service a31ea6
#endif
Packit Service a31ea6
    gs->xmlGetWarningsDefaultValue = xmlGetWarningsDefaultValueThrDef;
Packit Service a31ea6
    gs->xmlIndentTreeOutput = xmlIndentTreeOutputThrDef;
Packit Service a31ea6
    gs->xmlTreeIndentString = xmlTreeIndentStringThrDef;
Packit Service a31ea6
    gs->xmlKeepBlanksDefaultValue = xmlKeepBlanksDefaultValueThrDef;
Packit Service a31ea6
    gs->xmlLineNumbersDefaultValue = xmlLineNumbersDefaultValueThrDef;
Packit Service a31ea6
    gs->xmlLoadExtDtdDefaultValue = xmlLoadExtDtdDefaultValueThrDef;
Packit Service a31ea6
    gs->xmlParserDebugEntities = xmlParserDebugEntitiesThrDef;
Packit Service a31ea6
    gs->xmlParserVersion = LIBXML_VERSION_STRING;
Packit Service a31ea6
    gs->xmlPedanticParserDefaultValue = xmlPedanticParserDefaultValueThrDef;
Packit Service a31ea6
    gs->xmlSaveNoEmptyTags = xmlSaveNoEmptyTagsThrDef;
Packit Service a31ea6
    gs->xmlSubstituteEntitiesDefaultValue =
Packit Service a31ea6
        xmlSubstituteEntitiesDefaultValueThrDef;
Packit Service a31ea6
Packit Service a31ea6
    gs->xmlGenericError = xmlGenericErrorThrDef;
Packit Service a31ea6
    gs->xmlStructuredError = xmlStructuredErrorThrDef;
Packit Service a31ea6
    gs->xmlGenericErrorContext = xmlGenericErrorContextThrDef;
Packit Service a31ea6
    gs->xmlStructuredErrorContext = xmlStructuredErrorContextThrDef;
Packit Service a31ea6
    gs->xmlRegisterNodeDefaultValue = xmlRegisterNodeDefaultValueThrDef;
Packit Service a31ea6
    gs->xmlDeregisterNodeDefaultValue = xmlDeregisterNodeDefaultValueThrDef;
Packit Service a31ea6
Packit Service a31ea6
	gs->xmlParserInputBufferCreateFilenameValue = xmlParserInputBufferCreateFilenameValueThrDef;
Packit Service a31ea6
	gs->xmlOutputBufferCreateFilenameValue = xmlOutputBufferCreateFilenameValueThrDef;
Packit Service a31ea6
    memset(&gs->xmlLastError, 0, sizeof(xmlError));
Packit Service a31ea6
Packit Service a31ea6
    xmlMutexUnlock(xmlThrDefMutex);
Packit Service a31ea6
}
Packit Service a31ea6
Packit Service a31ea6
/**
Packit Service a31ea6
 * DOC_DISABLE : we ignore missing doc for the xmlThrDef functions,
Packit Service a31ea6
 *               those are really internal work
Packit Service a31ea6
 */
Packit Service a31ea6
void
Packit Service a31ea6
xmlThrDefSetGenericErrorFunc(void *ctx, xmlGenericErrorFunc handler) {
Packit Service a31ea6
    xmlMutexLock(xmlThrDefMutex);
Packit Service a31ea6
    xmlGenericErrorContextThrDef = ctx;
Packit Service a31ea6
    if (handler != NULL)
Packit Service a31ea6
	xmlGenericErrorThrDef = handler;
Packit Service a31ea6
    else
Packit Service a31ea6
	xmlGenericErrorThrDef = xmlGenericErrorDefaultFunc;
Packit Service a31ea6
    xmlMutexUnlock(xmlThrDefMutex);
Packit Service a31ea6
}
Packit Service a31ea6
Packit Service a31ea6
void
Packit Service a31ea6
xmlThrDefSetStructuredErrorFunc(void *ctx, xmlStructuredErrorFunc handler) {
Packit Service a31ea6
    xmlMutexLock(xmlThrDefMutex);
Packit Service a31ea6
    xmlStructuredErrorContextThrDef = ctx;
Packit Service a31ea6
    xmlStructuredErrorThrDef = handler;
Packit Service a31ea6
    xmlMutexUnlock(xmlThrDefMutex);
Packit Service a31ea6
}
Packit Service a31ea6
Packit Service a31ea6
/**
Packit Service a31ea6
 * xmlRegisterNodeDefault:
Packit Service a31ea6
 * @func: function pointer to the new RegisterNodeFunc
Packit Service a31ea6
 *
Packit Service a31ea6
 * Registers a callback for node creation
Packit Service a31ea6
 *
Packit Service a31ea6
 * Returns the old value of the registration function
Packit Service a31ea6
 */
Packit Service a31ea6
xmlRegisterNodeFunc
Packit Service a31ea6
xmlRegisterNodeDefault(xmlRegisterNodeFunc func)
Packit Service a31ea6
{
Packit Service a31ea6
    xmlRegisterNodeFunc old = xmlRegisterNodeDefaultValue;
Packit Service a31ea6
Packit Service a31ea6
    __xmlRegisterCallbacks = 1;
Packit Service a31ea6
    xmlRegisterNodeDefaultValue = func;
Packit Service a31ea6
    return(old);
Packit Service a31ea6
}
Packit Service a31ea6
Packit Service a31ea6
xmlRegisterNodeFunc
Packit Service a31ea6
xmlThrDefRegisterNodeDefault(xmlRegisterNodeFunc func)
Packit Service a31ea6
{
Packit Service a31ea6
    xmlRegisterNodeFunc old;
Packit Service a31ea6
Packit Service a31ea6
    xmlMutexLock(xmlThrDefMutex);
Packit Service a31ea6
    old = xmlRegisterNodeDefaultValueThrDef;
Packit Service a31ea6
Packit Service a31ea6
    __xmlRegisterCallbacks = 1;
Packit Service a31ea6
    xmlRegisterNodeDefaultValueThrDef = func;
Packit Service a31ea6
    xmlMutexUnlock(xmlThrDefMutex);
Packit Service a31ea6
Packit Service a31ea6
    return(old);
Packit Service a31ea6
}
Packit Service a31ea6
Packit Service a31ea6
/**
Packit Service a31ea6
 * xmlDeregisterNodeDefault:
Packit Service a31ea6
 * @func: function pointer to the new DeregisterNodeFunc
Packit Service a31ea6
 *
Packit Service a31ea6
 * Registers a callback for node destruction
Packit Service a31ea6
 *
Packit Service a31ea6
 * Returns the previous value of the deregistration function
Packit Service a31ea6
 */
Packit Service a31ea6
xmlDeregisterNodeFunc
Packit Service a31ea6
xmlDeregisterNodeDefault(xmlDeregisterNodeFunc func)
Packit Service a31ea6
{
Packit Service a31ea6
    xmlDeregisterNodeFunc old = xmlDeregisterNodeDefaultValue;
Packit Service a31ea6
Packit Service a31ea6
    __xmlRegisterCallbacks = 1;
Packit Service a31ea6
    xmlDeregisterNodeDefaultValue = func;
Packit Service a31ea6
    return(old);
Packit Service a31ea6
}
Packit Service a31ea6
Packit Service a31ea6
xmlDeregisterNodeFunc
Packit Service a31ea6
xmlThrDefDeregisterNodeDefault(xmlDeregisterNodeFunc func)
Packit Service a31ea6
{
Packit Service a31ea6
    xmlDeregisterNodeFunc old;
Packit Service a31ea6
Packit Service a31ea6
    xmlMutexLock(xmlThrDefMutex);
Packit Service a31ea6
    old = xmlDeregisterNodeDefaultValueThrDef;
Packit Service a31ea6
Packit Service a31ea6
    __xmlRegisterCallbacks = 1;
Packit Service a31ea6
    xmlDeregisterNodeDefaultValueThrDef = func;
Packit Service a31ea6
    xmlMutexUnlock(xmlThrDefMutex);
Packit Service a31ea6
Packit Service a31ea6
    return(old);
Packit Service a31ea6
}
Packit Service a31ea6
Packit Service a31ea6
xmlParserInputBufferCreateFilenameFunc
Packit Service a31ea6
xmlThrDefParserInputBufferCreateFilenameDefault(xmlParserInputBufferCreateFilenameFunc func)
Packit Service a31ea6
{
Packit Service a31ea6
    xmlParserInputBufferCreateFilenameFunc old;
Packit Service a31ea6
Packit Service a31ea6
    xmlMutexLock(xmlThrDefMutex);
Packit Service a31ea6
    old = xmlParserInputBufferCreateFilenameValueThrDef;
Packit Service a31ea6
    if (old == NULL) {
Packit Service a31ea6
		old = __xmlParserInputBufferCreateFilename;
Packit Service a31ea6
	}
Packit Service a31ea6
Packit Service a31ea6
    xmlParserInputBufferCreateFilenameValueThrDef = func;
Packit Service a31ea6
    xmlMutexUnlock(xmlThrDefMutex);
Packit Service a31ea6
Packit Service a31ea6
    return(old);
Packit Service a31ea6
}
Packit Service a31ea6
Packit Service a31ea6
xmlOutputBufferCreateFilenameFunc
Packit Service a31ea6
xmlThrDefOutputBufferCreateFilenameDefault(xmlOutputBufferCreateFilenameFunc func)
Packit Service a31ea6
{
Packit Service a31ea6
    xmlOutputBufferCreateFilenameFunc old;
Packit Service a31ea6
Packit Service a31ea6
    xmlMutexLock(xmlThrDefMutex);
Packit Service a31ea6
    old = xmlOutputBufferCreateFilenameValueThrDef;
Packit Service a31ea6
#ifdef LIBXML_OUTPUT_ENABLED
Packit Service a31ea6
    if (old == NULL) {
Packit Service a31ea6
		old = __xmlOutputBufferCreateFilename;
Packit Service a31ea6
	}
Packit Service a31ea6
#endif
Packit Service a31ea6
    xmlOutputBufferCreateFilenameValueThrDef = func;
Packit Service a31ea6
    xmlMutexUnlock(xmlThrDefMutex);
Packit Service a31ea6
Packit Service a31ea6
    return(old);
Packit Service a31ea6
}
Packit Service a31ea6
Packit Service a31ea6
#ifdef LIBXML_DOCB_ENABLED
Packit Service a31ea6
#undef	docbDefaultSAXHandler
Packit Service a31ea6
xmlSAXHandlerV1 *
Packit Service a31ea6
__docbDefaultSAXHandler(void) {
Packit Service a31ea6
    if (IS_MAIN_THREAD)
Packit Service a31ea6
	return (&docbDefaultSAXHandler);
Packit Service a31ea6
    else
Packit Service a31ea6
	return (&xmlGetGlobalState()->docbDefaultSAXHandler);
Packit Service a31ea6
}
Packit Service a31ea6
#endif
Packit Service a31ea6
Packit Service a31ea6
#ifdef LIBXML_HTML_ENABLED
Packit Service a31ea6
#undef	htmlDefaultSAXHandler
Packit Service a31ea6
xmlSAXHandlerV1 *
Packit Service a31ea6
__htmlDefaultSAXHandler(void) {
Packit Service a31ea6
    if (IS_MAIN_THREAD)
Packit Service a31ea6
	return (&htmlDefaultSAXHandler);
Packit Service a31ea6
    else
Packit Service a31ea6
	return (&xmlGetGlobalState()->htmlDefaultSAXHandler);
Packit Service a31ea6
}
Packit Service a31ea6
#endif
Packit Service a31ea6
Packit Service a31ea6
#undef xmlLastError
Packit Service a31ea6
xmlError *
Packit Service a31ea6
__xmlLastError(void) {
Packit Service a31ea6
    if (IS_MAIN_THREAD)
Packit Service a31ea6
	return (&xmlLastError);
Packit Service a31ea6
    else
Packit Service a31ea6
	return (&xmlGetGlobalState()->xmlLastError);
Packit Service a31ea6
}
Packit Service a31ea6
Packit Service a31ea6
/*
Packit Service a31ea6
 * The following memory routines were apparently lost at some point,
Packit Service a31ea6
 * and were re-inserted at this point on June 10, 2004.  Hope it's
Packit Service a31ea6
 * the right place for them :-)
Packit Service a31ea6
 */
Packit Service a31ea6
#if defined(LIBXML_THREAD_ALLOC_ENABLED) && defined(LIBXML_THREAD_ENABLED)
Packit Service a31ea6
#undef xmlMalloc
Packit Service a31ea6
xmlMallocFunc *
Packit Service a31ea6
__xmlMalloc(void){
Packit Service a31ea6
    if (IS_MAIN_THREAD)
Packit Service a31ea6
        return (&xmlMalloc);
Packit Service a31ea6
    else
Packit Service a31ea6
	return (&xmlGetGlobalState()->xmlMalloc);
Packit Service a31ea6
}
Packit Service a31ea6
Packit Service a31ea6
#undef xmlMallocAtomic
Packit Service a31ea6
xmlMallocFunc *
Packit Service a31ea6
__xmlMallocAtomic(void){
Packit Service a31ea6
    if (IS_MAIN_THREAD)
Packit Service a31ea6
        return (&xmlMallocAtomic);
Packit Service a31ea6
    else
Packit Service a31ea6
        return (&xmlGetGlobalState()->xmlMallocAtomic);
Packit Service a31ea6
}
Packit Service a31ea6
Packit Service a31ea6
#undef xmlRealloc
Packit Service a31ea6
xmlReallocFunc *
Packit Service a31ea6
__xmlRealloc(void){
Packit Service a31ea6
    if (IS_MAIN_THREAD)
Packit Service a31ea6
        return (&xmlRealloc);
Packit Service a31ea6
    else
Packit Service a31ea6
        return (&xmlGetGlobalState()->xmlRealloc);
Packit Service a31ea6
}
Packit Service a31ea6
Packit Service a31ea6
#undef xmlFree
Packit Service a31ea6
xmlFreeFunc *
Packit Service a31ea6
__xmlFree(void){
Packit Service a31ea6
    if (IS_MAIN_THREAD)
Packit Service a31ea6
        return (&xmlFree);
Packit Service a31ea6
    else
Packit Service a31ea6
        return (&xmlGetGlobalState()->xmlFree);
Packit Service a31ea6
}
Packit Service a31ea6
Packit Service a31ea6
xmlStrdupFunc *
Packit Service a31ea6
__xmlMemStrdup(void){
Packit Service a31ea6
    if (IS_MAIN_THREAD)
Packit Service a31ea6
        return (&xmlMemStrdup);
Packit Service a31ea6
    else
Packit Service a31ea6
        return (&xmlGetGlobalState()->xmlMemStrdup);
Packit Service a31ea6
}
Packit Service a31ea6
Packit Service a31ea6
#endif
Packit Service a31ea6
Packit Service a31ea6
/*
Packit Service a31ea6
 * Everything starting from the line below is
Packit Service a31ea6
 * Automatically generated by build_glob.py.
Packit Service a31ea6
 * Do not modify the previous line.
Packit Service a31ea6
 */
Packit Service a31ea6
Packit Service a31ea6
Packit Service a31ea6
#undef	oldXMLWDcompatibility
Packit Service a31ea6
int *
Packit Service a31ea6
__oldXMLWDcompatibility(void) {
Packit Service a31ea6
    if (IS_MAIN_THREAD)
Packit Service a31ea6
	return (&oldXMLWDcompatibility);
Packit Service a31ea6
    else
Packit Service a31ea6
	return (&xmlGetGlobalState()->oldXMLWDcompatibility);
Packit Service a31ea6
}
Packit Service a31ea6
Packit Service a31ea6
#undef	xmlBufferAllocScheme
Packit Service a31ea6
xmlBufferAllocationScheme *
Packit Service a31ea6
__xmlBufferAllocScheme(void) {
Packit Service a31ea6
    if (IS_MAIN_THREAD)
Packit Service a31ea6
	return (&xmlBufferAllocScheme);
Packit Service a31ea6
    else
Packit Service a31ea6
	return (&xmlGetGlobalState()->xmlBufferAllocScheme);
Packit Service a31ea6
}
Packit Service a31ea6
xmlBufferAllocationScheme xmlThrDefBufferAllocScheme(xmlBufferAllocationScheme v) {
Packit Service a31ea6
    xmlBufferAllocationScheme ret;
Packit Service a31ea6
    xmlMutexLock(xmlThrDefMutex);
Packit Service a31ea6
    ret = xmlBufferAllocSchemeThrDef;
Packit Service a31ea6
    xmlBufferAllocSchemeThrDef = v;
Packit Service a31ea6
    xmlMutexUnlock(xmlThrDefMutex);
Packit Service a31ea6
    return ret;
Packit Service a31ea6
}
Packit Service a31ea6
Packit Service a31ea6
#undef	xmlDefaultBufferSize
Packit Service a31ea6
int *
Packit Service a31ea6
__xmlDefaultBufferSize(void) {
Packit Service a31ea6
    if (IS_MAIN_THREAD)
Packit Service a31ea6
	return (&xmlDefaultBufferSize);
Packit Service a31ea6
    else
Packit Service a31ea6
	return (&xmlGetGlobalState()->xmlDefaultBufferSize);
Packit Service a31ea6
}
Packit Service a31ea6
int xmlThrDefDefaultBufferSize(int v) {
Packit Service a31ea6
    int ret;
Packit Service a31ea6
    xmlMutexLock(xmlThrDefMutex);
Packit Service a31ea6
    ret = xmlDefaultBufferSizeThrDef;
Packit Service a31ea6
    xmlDefaultBufferSizeThrDef = v;
Packit Service a31ea6
    xmlMutexUnlock(xmlThrDefMutex);
Packit Service a31ea6
    return ret;
Packit Service a31ea6
}
Packit Service a31ea6
Packit Service a31ea6
#ifdef LIBXML_SAX1_ENABLED
Packit Service a31ea6
#undef	xmlDefaultSAXHandler
Packit Service a31ea6
xmlSAXHandlerV1 *
Packit Service a31ea6
__xmlDefaultSAXHandler(void) {
Packit Service a31ea6
    if (IS_MAIN_THREAD)
Packit Service a31ea6
	return (&xmlDefaultSAXHandler);
Packit Service a31ea6
    else
Packit Service a31ea6
	return (&xmlGetGlobalState()->xmlDefaultSAXHandler);
Packit Service a31ea6
}
Packit Service a31ea6
#endif /* LIBXML_SAX1_ENABLED */
Packit Service a31ea6
Packit Service a31ea6
#undef	xmlDefaultSAXLocator
Packit Service a31ea6
xmlSAXLocator *
Packit Service a31ea6
__xmlDefaultSAXLocator(void) {
Packit Service a31ea6
    if (IS_MAIN_THREAD)
Packit Service a31ea6
	return (&xmlDefaultSAXLocator);
Packit Service a31ea6
    else
Packit Service a31ea6
	return (&xmlGetGlobalState()->xmlDefaultSAXLocator);
Packit Service a31ea6
}
Packit Service a31ea6
Packit Service a31ea6
#undef	xmlDoValidityCheckingDefaultValue
Packit Service a31ea6
int *
Packit Service a31ea6
__xmlDoValidityCheckingDefaultValue(void) {
Packit Service a31ea6
    if (IS_MAIN_THREAD)
Packit Service a31ea6
	return (&xmlDoValidityCheckingDefaultValue);
Packit Service a31ea6
    else
Packit Service a31ea6
	return (&xmlGetGlobalState()->xmlDoValidityCheckingDefaultValue);
Packit Service a31ea6
}
Packit Service a31ea6
int xmlThrDefDoValidityCheckingDefaultValue(int v) {
Packit Service a31ea6
    int ret;
Packit Service a31ea6
    xmlMutexLock(xmlThrDefMutex);
Packit Service a31ea6
    ret = xmlDoValidityCheckingDefaultValueThrDef;
Packit Service a31ea6
    xmlDoValidityCheckingDefaultValueThrDef = v;
Packit Service a31ea6
    xmlMutexUnlock(xmlThrDefMutex);
Packit Service a31ea6
    return ret;
Packit Service a31ea6
}
Packit Service a31ea6
Packit Service a31ea6
#undef	xmlGenericError
Packit Service a31ea6
xmlGenericErrorFunc *
Packit Service a31ea6
__xmlGenericError(void) {
Packit Service a31ea6
    if (IS_MAIN_THREAD)
Packit Service a31ea6
	return (&xmlGenericError);
Packit Service a31ea6
    else
Packit Service a31ea6
	return (&xmlGetGlobalState()->xmlGenericError);
Packit Service a31ea6
}
Packit Service a31ea6
Packit Service a31ea6
#undef	xmlStructuredError
Packit Service a31ea6
xmlStructuredErrorFunc *
Packit Service a31ea6
__xmlStructuredError(void) {
Packit Service a31ea6
    if (IS_MAIN_THREAD)
Packit Service a31ea6
	return (&xmlStructuredError);
Packit Service a31ea6
    else
Packit Service a31ea6
	return (&xmlGetGlobalState()->xmlStructuredError);
Packit Service a31ea6
}
Packit Service a31ea6
Packit Service a31ea6
#undef	xmlGenericErrorContext
Packit Service a31ea6
void * *
Packit Service a31ea6
__xmlGenericErrorContext(void) {
Packit Service a31ea6
    if (IS_MAIN_THREAD)
Packit Service a31ea6
	return (&xmlGenericErrorContext);
Packit Service a31ea6
    else
Packit Service a31ea6
	return (&xmlGetGlobalState()->xmlGenericErrorContext);
Packit Service a31ea6
}
Packit Service a31ea6
Packit Service a31ea6
#undef	xmlStructuredErrorContext
Packit Service a31ea6
void * *
Packit Service a31ea6
__xmlStructuredErrorContext(void) {
Packit Service a31ea6
    if (IS_MAIN_THREAD)
Packit Service a31ea6
	return (&xmlStructuredErrorContext);
Packit Service a31ea6
    else
Packit Service a31ea6
	return (&xmlGetGlobalState()->xmlStructuredErrorContext);
Packit Service a31ea6
}
Packit Service a31ea6
Packit Service a31ea6
#undef	xmlGetWarningsDefaultValue
Packit Service a31ea6
int *
Packit Service a31ea6
__xmlGetWarningsDefaultValue(void) {
Packit Service a31ea6
    if (IS_MAIN_THREAD)
Packit Service a31ea6
	return (&xmlGetWarningsDefaultValue);
Packit Service a31ea6
    else
Packit Service a31ea6
	return (&xmlGetGlobalState()->xmlGetWarningsDefaultValue);
Packit Service a31ea6
}
Packit Service a31ea6
int xmlThrDefGetWarningsDefaultValue(int v) {
Packit Service a31ea6
    int ret;
Packit Service a31ea6
    xmlMutexLock(xmlThrDefMutex);
Packit Service a31ea6
    ret = xmlGetWarningsDefaultValueThrDef;
Packit Service a31ea6
    xmlGetWarningsDefaultValueThrDef = v;
Packit Service a31ea6
    xmlMutexUnlock(xmlThrDefMutex);
Packit Service a31ea6
    return ret;
Packit Service a31ea6
}
Packit Service a31ea6
Packit Service a31ea6
#undef	xmlIndentTreeOutput
Packit Service a31ea6
int *
Packit Service a31ea6
__xmlIndentTreeOutput(void) {
Packit Service a31ea6
    if (IS_MAIN_THREAD)
Packit Service a31ea6
	return (&xmlIndentTreeOutput);
Packit Service a31ea6
    else
Packit Service a31ea6
	return (&xmlGetGlobalState()->xmlIndentTreeOutput);
Packit Service a31ea6
}
Packit Service a31ea6
int xmlThrDefIndentTreeOutput(int v) {
Packit Service a31ea6
    int ret;
Packit Service a31ea6
    xmlMutexLock(xmlThrDefMutex);
Packit Service a31ea6
    ret = xmlIndentTreeOutputThrDef;
Packit Service a31ea6
    xmlIndentTreeOutputThrDef = v;
Packit Service a31ea6
    xmlMutexUnlock(xmlThrDefMutex);
Packit Service a31ea6
    return ret;
Packit Service a31ea6
}
Packit Service a31ea6
Packit Service a31ea6
#undef	xmlTreeIndentString
Packit Service a31ea6
const char * *
Packit Service a31ea6
__xmlTreeIndentString(void) {
Packit Service a31ea6
    if (IS_MAIN_THREAD)
Packit Service a31ea6
	return (&xmlTreeIndentString);
Packit Service a31ea6
    else
Packit Service a31ea6
	return (&xmlGetGlobalState()->xmlTreeIndentString);
Packit Service a31ea6
}
Packit Service a31ea6
const char * xmlThrDefTreeIndentString(const char * v) {
Packit Service a31ea6
    const char * ret;
Packit Service a31ea6
    xmlMutexLock(xmlThrDefMutex);
Packit Service a31ea6
    ret = xmlTreeIndentStringThrDef;
Packit Service a31ea6
    xmlTreeIndentStringThrDef = v;
Packit Service a31ea6
    xmlMutexUnlock(xmlThrDefMutex);
Packit Service a31ea6
    return ret;
Packit Service a31ea6
}
Packit Service a31ea6
Packit Service a31ea6
#undef	xmlKeepBlanksDefaultValue
Packit Service a31ea6
int *
Packit Service a31ea6
__xmlKeepBlanksDefaultValue(void) {
Packit Service a31ea6
    if (IS_MAIN_THREAD)
Packit Service a31ea6
	return (&xmlKeepBlanksDefaultValue);
Packit Service a31ea6
    else
Packit Service a31ea6
	return (&xmlGetGlobalState()->xmlKeepBlanksDefaultValue);
Packit Service a31ea6
}
Packit Service a31ea6
int xmlThrDefKeepBlanksDefaultValue(int v) {
Packit Service a31ea6
    int ret;
Packit Service a31ea6
    xmlMutexLock(xmlThrDefMutex);
Packit Service a31ea6
    ret = xmlKeepBlanksDefaultValueThrDef;
Packit Service a31ea6
    xmlKeepBlanksDefaultValueThrDef = v;
Packit Service a31ea6
    xmlMutexUnlock(xmlThrDefMutex);
Packit Service a31ea6
    return ret;
Packit Service a31ea6
}
Packit Service a31ea6
Packit Service a31ea6
#undef	xmlLineNumbersDefaultValue
Packit Service a31ea6
int *
Packit Service a31ea6
__xmlLineNumbersDefaultValue(void) {
Packit Service a31ea6
    if (IS_MAIN_THREAD)
Packit Service a31ea6
	return (&xmlLineNumbersDefaultValue);
Packit Service a31ea6
    else
Packit Service a31ea6
	return (&xmlGetGlobalState()->xmlLineNumbersDefaultValue);
Packit Service a31ea6
}
Packit Service a31ea6
int xmlThrDefLineNumbersDefaultValue(int v) {
Packit Service a31ea6
    int ret;
Packit Service a31ea6
    xmlMutexLock(xmlThrDefMutex);
Packit Service a31ea6
    ret = xmlLineNumbersDefaultValueThrDef;
Packit Service a31ea6
    xmlLineNumbersDefaultValueThrDef = v;
Packit Service a31ea6
    xmlMutexUnlock(xmlThrDefMutex);
Packit Service a31ea6
    return ret;
Packit Service a31ea6
}
Packit Service a31ea6
Packit Service a31ea6
#undef	xmlLoadExtDtdDefaultValue
Packit Service a31ea6
int *
Packit Service a31ea6
__xmlLoadExtDtdDefaultValue(void) {
Packit Service a31ea6
    if (IS_MAIN_THREAD)
Packit Service a31ea6
	return (&xmlLoadExtDtdDefaultValue);
Packit Service a31ea6
    else
Packit Service a31ea6
	return (&xmlGetGlobalState()->xmlLoadExtDtdDefaultValue);
Packit Service a31ea6
}
Packit Service a31ea6
int xmlThrDefLoadExtDtdDefaultValue(int v) {
Packit Service a31ea6
    int ret;
Packit Service a31ea6
    xmlMutexLock(xmlThrDefMutex);
Packit Service a31ea6
    ret = xmlLoadExtDtdDefaultValueThrDef;
Packit Service a31ea6
    xmlLoadExtDtdDefaultValueThrDef = v;
Packit Service a31ea6
    xmlMutexUnlock(xmlThrDefMutex);
Packit Service a31ea6
    return ret;
Packit Service a31ea6
}
Packit Service a31ea6
Packit Service a31ea6
#undef	xmlParserDebugEntities
Packit Service a31ea6
int *
Packit Service a31ea6
__xmlParserDebugEntities(void) {
Packit Service a31ea6
    if (IS_MAIN_THREAD)
Packit Service a31ea6
	return (&xmlParserDebugEntities);
Packit Service a31ea6
    else
Packit Service a31ea6
	return (&xmlGetGlobalState()->xmlParserDebugEntities);
Packit Service a31ea6
}
Packit Service a31ea6
int xmlThrDefParserDebugEntities(int v) {
Packit Service a31ea6
    int ret;
Packit Service a31ea6
    xmlMutexLock(xmlThrDefMutex);
Packit Service a31ea6
    ret = xmlParserDebugEntitiesThrDef;
Packit Service a31ea6
    xmlParserDebugEntitiesThrDef = v;
Packit Service a31ea6
    xmlMutexUnlock(xmlThrDefMutex);
Packit Service a31ea6
    return ret;
Packit Service a31ea6
}
Packit Service a31ea6
Packit Service a31ea6
#undef	xmlParserVersion
Packit Service a31ea6
const char * *
Packit Service a31ea6
__xmlParserVersion(void) {
Packit Service a31ea6
    if (IS_MAIN_THREAD)
Packit Service a31ea6
	return (&xmlParserVersion);
Packit Service a31ea6
    else
Packit Service a31ea6
	return (&xmlGetGlobalState()->xmlParserVersion);
Packit Service a31ea6
}
Packit Service a31ea6
Packit Service a31ea6
#undef	xmlPedanticParserDefaultValue
Packit Service a31ea6
int *
Packit Service a31ea6
__xmlPedanticParserDefaultValue(void) {
Packit Service a31ea6
    if (IS_MAIN_THREAD)
Packit Service a31ea6
	return (&xmlPedanticParserDefaultValue);
Packit Service a31ea6
    else
Packit Service a31ea6
	return (&xmlGetGlobalState()->xmlPedanticParserDefaultValue);
Packit Service a31ea6
}
Packit Service a31ea6
int xmlThrDefPedanticParserDefaultValue(int v) {
Packit Service a31ea6
    int ret;
Packit Service a31ea6
    xmlMutexLock(xmlThrDefMutex);
Packit Service a31ea6
    ret = xmlPedanticParserDefaultValueThrDef;
Packit Service a31ea6
    xmlPedanticParserDefaultValueThrDef = v;
Packit Service a31ea6
    xmlMutexUnlock(xmlThrDefMutex);
Packit Service a31ea6
    return ret;
Packit Service a31ea6
}
Packit Service a31ea6
Packit Service a31ea6
#undef	xmlSaveNoEmptyTags
Packit Service a31ea6
int *
Packit Service a31ea6
__xmlSaveNoEmptyTags(void) {
Packit Service a31ea6
    if (IS_MAIN_THREAD)
Packit Service a31ea6
	return (&xmlSaveNoEmptyTags);
Packit Service a31ea6
    else
Packit Service a31ea6
	return (&xmlGetGlobalState()->xmlSaveNoEmptyTags);
Packit Service a31ea6
}
Packit Service a31ea6
int xmlThrDefSaveNoEmptyTags(int v) {
Packit Service a31ea6
    int ret;
Packit Service a31ea6
    xmlMutexLock(xmlThrDefMutex);
Packit Service a31ea6
    ret = xmlSaveNoEmptyTagsThrDef;
Packit Service a31ea6
    xmlSaveNoEmptyTagsThrDef = v;
Packit Service a31ea6
    xmlMutexUnlock(xmlThrDefMutex);
Packit Service a31ea6
    return ret;
Packit Service a31ea6
}
Packit Service a31ea6
Packit Service a31ea6
#undef	xmlSubstituteEntitiesDefaultValue
Packit Service a31ea6
int *
Packit Service a31ea6
__xmlSubstituteEntitiesDefaultValue(void) {
Packit Service a31ea6
    if (IS_MAIN_THREAD)
Packit Service a31ea6
	return (&xmlSubstituteEntitiesDefaultValue);
Packit Service a31ea6
    else
Packit Service a31ea6
	return (&xmlGetGlobalState()->xmlSubstituteEntitiesDefaultValue);
Packit Service a31ea6
}
Packit Service a31ea6
int xmlThrDefSubstituteEntitiesDefaultValue(int v) {
Packit Service a31ea6
    int ret;
Packit Service a31ea6
    xmlMutexLock(xmlThrDefMutex);
Packit Service a31ea6
    ret = xmlSubstituteEntitiesDefaultValueThrDef;
Packit Service a31ea6
    xmlSubstituteEntitiesDefaultValueThrDef = v;
Packit Service a31ea6
    xmlMutexUnlock(xmlThrDefMutex);
Packit Service a31ea6
    return ret;
Packit Service a31ea6
}
Packit Service a31ea6
Packit Service a31ea6
#undef	xmlRegisterNodeDefaultValue
Packit Service a31ea6
xmlRegisterNodeFunc *
Packit Service a31ea6
__xmlRegisterNodeDefaultValue(void) {
Packit Service a31ea6
    if (IS_MAIN_THREAD)
Packit Service a31ea6
	return (&xmlRegisterNodeDefaultValue);
Packit Service a31ea6
    else
Packit Service a31ea6
	return (&xmlGetGlobalState()->xmlRegisterNodeDefaultValue);
Packit Service a31ea6
}
Packit Service a31ea6
Packit Service a31ea6
#undef	xmlDeregisterNodeDefaultValue
Packit Service a31ea6
xmlDeregisterNodeFunc *
Packit Service a31ea6
__xmlDeregisterNodeDefaultValue(void) {
Packit Service a31ea6
    if (IS_MAIN_THREAD)
Packit Service a31ea6
	return (&xmlDeregisterNodeDefaultValue);
Packit Service a31ea6
    else
Packit Service a31ea6
	return (&xmlGetGlobalState()->xmlDeregisterNodeDefaultValue);
Packit Service a31ea6
}
Packit Service a31ea6
Packit Service a31ea6
#undef	xmlParserInputBufferCreateFilenameValue
Packit Service a31ea6
xmlParserInputBufferCreateFilenameFunc *
Packit Service a31ea6
__xmlParserInputBufferCreateFilenameValue(void) {
Packit Service a31ea6
    if (IS_MAIN_THREAD)
Packit Service a31ea6
	return (&xmlParserInputBufferCreateFilenameValue);
Packit Service a31ea6
    else
Packit Service a31ea6
	return (&xmlGetGlobalState()->xmlParserInputBufferCreateFilenameValue);
Packit Service a31ea6
}
Packit Service a31ea6
Packit Service a31ea6
#undef	xmlOutputBufferCreateFilenameValue
Packit Service a31ea6
xmlOutputBufferCreateFilenameFunc *
Packit Service a31ea6
__xmlOutputBufferCreateFilenameValue(void) {
Packit Service a31ea6
    if (IS_MAIN_THREAD)
Packit Service a31ea6
	return (&xmlOutputBufferCreateFilenameValue);
Packit Service a31ea6
    else
Packit Service a31ea6
	return (&xmlGetGlobalState()->xmlOutputBufferCreateFilenameValue);
Packit Service a31ea6
}
Packit Service a31ea6
Packit Service a31ea6
#define bottom_globals
Packit Service a31ea6
#include "elfgcchack.h"