diff --git a/xmlstarlet/no-exit.patch b/xmlstarlet/no-exit.patch index cc3e048b..8caf3f53 100644 --- a/xmlstarlet/no-exit.patch +++ b/xmlstarlet/no-exit.patch @@ -588,9 +588,9 @@ index e199178..afd931b 100644 const edOptions* g_ops) { @@ -559,7 +569,7 @@ edOutput(const char* filename, const XmlEdAction* ops, int ops_count, + { cleanupNSArr(ns_arr); xmlCleanupParser(); - xmlCleanupGlobals(); - exit(EXIT_BAD_FILE); + return EXIT_BAD_FILE; } @@ -658,7 +658,7 @@ index e199178..afd931b 100644 if (arg[0] == '-') { if (ops_count >= max_ops_count) -@@ -741,17 +763,23 @@ edMain(int argc, char **argv) +@@ -741,16 +763,22 @@ edMain(int argc, char **argv) if (i >= argc) { @@ -682,7 +682,6 @@ index e199178..afd931b 100644 xmlFree(ops); cleanupNSArr(ns_arr); xmlCleanupParser(); - xmlCleanupGlobals(); - return 0; + + return ret; diff --git a/xmlstarlet/src/trans.c b/xmlstarlet/src/trans.c index 3603436f..cb2b0709 100644 --- a/xmlstarlet/src/trans.c +++ b/xmlstarlet/src/trans.c @@ -1,6 +1,9 @@ /* $Id: trans.c,v 1.19 2004/11/22 02:28:21 mgrouch Exp $ */ #include + +#include + #include "trans.h" #include "xmlstar.h" diff --git a/xmlstarlet/src/xml_edit.c b/xmlstarlet/src/xml_edit.c index e199178e..85a0a9f4 100644 --- a/xmlstarlet/src/xml_edit.c +++ b/xmlstarlet/src/xml_edit.c @@ -558,7 +558,6 @@ edOutput(const char* filename, const XmlEdAction* ops, int ops_count, { cleanupNSArr(ns_arr); xmlCleanupParser(); - xmlCleanupGlobals(); exit(EXIT_BAD_FILE); } @@ -752,6 +751,5 @@ edMain(int argc, char **argv) xmlFree(ops); cleanupNSArr(ns_arr); xmlCleanupParser(); - xmlCleanupGlobals(); return 0; } diff --git a/xmlstarlet/src/xml_format.c b/xmlstarlet/src/xml_format.c index e9da4df8..32a5f3d6 100644 --- a/xmlstarlet/src/xml_format.c +++ b/xmlstarlet/src/xml_format.c @@ -35,6 +35,7 @@ THE SOFTWARE. #include #include #include +#include #include #include #include