123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- /*====================================================================*
- *
- * NODE * xmlfree (NODE * node);
- *
- * node.h
- *
- * recursively free child nodes; minimize recursion by following
- * node->after at each level;
- *
- * the caller must free the root node; this allows that the root
- * to be statically declared, if desired;
- *
- * Motley Tools by Charles Maier;
- * Copyright (c) 2001-2006 by Charles Maier Associates;
- * Licensed under the Internet Software Consortium License;
- *
- *--------------------------------------------------------------------*/
- #ifndef XMLFREE_SOURCE
- #define XMLFREE_SOURCE
- #include <stdlib.h>
- #include <memory.h>
- #include "../nodes/node.h"
- void xmlfree (NODE * node)
- {
- if (node)
- {
- node = node->below;
- }
- while (node)
- {
- NODE * temp = node;
- if (node->above)
- {
- node->above->below = (NODE *)(0);
- }
- if (node->prior)
- {
- node->prior->after = (NODE *)(0);
- }
- xmlfree (node);
- node = node->after;
- free (temp);
- }
- return;
- }
- #endif
|