12410 * OOM: never |
12410 * OOM: never |
12411 */ |
12411 */ |
12412 |
12412 |
12413 void |
12413 void |
12414 xmlCleanupParser(void) { |
12414 xmlCleanupParser(void) { |
12415 if (!xmlParserInitialized) |
12415 if (xmlParserInitialized) |
12416 return; |
12416 { |
12417 |
12417 xmlCleanupCharEncodingHandlers(); |
12418 xmlCleanupCharEncodingHandlers(); |
12418 #ifdef LIBXML_CATALOG_ENABLED |
12419 #ifdef LIBXML_CATALOG_ENABLED |
12419 xmlCatalogCleanup(); |
12420 xmlCatalogCleanup(); |
12420 #endif |
12421 #endif |
12421 xmlCleanupInputCallbacks(); |
12422 xmlCleanupInputCallbacks(); |
12422 #ifdef LIBXML_OUTPUT_ENABLED |
12423 #ifdef LIBXML_OUTPUT_ENABLED |
12423 xmlCleanupOutputCallbacks(); |
12424 xmlCleanupOutputCallbacks(); |
12424 #endif |
12425 #endif |
12425 xmlCleanupGlobals(); |
12426 xmlCleanupGlobals(); |
12426 xmlResetLastError(); |
12427 xmlResetLastError(); |
12427 xmlCleanupThreads(); /* must be last if called not from the main thread */ |
12428 xmlCleanupThreads(); /* must be last if called not from the main thread */ |
12428 xmlCleanupMemory(); |
12429 xmlCleanupMemory(); |
12429 xmlParserInitialized = 0; |
12430 xmlParserInitialized = 0; |
12430 } |
|
12431 xecleanTLS(); |
12431 } |
12432 } |
12432 |
12433 |
12433 /************************************************************************ |
12434 /************************************************************************ |
12434 * * |
12435 * * |
12435 * New set (2.6.0) of simpler and more flexible APIs * |
12436 * New set (2.6.0) of simpler and more flexible APIs * |