| 270 |
270 |
| 271 /* if we're part of a tree, remove ourselves from the tree first */ |
271 /* if we're part of a tree, remove ourselves from the tree first */ |
| 272 if(NULL != node->parent) { |
272 if(NULL != node->parent) { |
| 273 if(node->parent->child == node) { |
273 if(node->parent->child == node) { |
| 274 node->parent->child = node->next; |
274 node->parent->child = node->next; |
| |
275 if (node->parent->lastchild == node) |
| |
276 node->parent->lastchild = node->next; |
| 275 } else { |
277 } else { |
| 276 xmlnode *prev = node->parent->child; |
278 xmlnode *prev = node->parent->child; |
| 277 while(prev && prev->next != node) { |
279 while(prev && prev->next != node) { |
| 278 prev = prev->next; |
280 prev = prev->next; |
| 279 } |
281 } |
| 280 if(prev) { |
282 if(prev) { |
| 281 prev->next = node->next; |
283 prev->next = node->next; |
| |
284 if (node->parent->lastchild == node) |
| |
285 node->parent->lastchild = prev; |
| 282 } |
286 } |
| 283 } |
287 } |
| 284 } |
288 } |
| 285 |
289 |
| 286 /* now free our children */ |
290 /* now free our children */ |