[xml] addSibling missing check for element equality
- From: Kris Breuker <kris b-lex nl>
- To: xml gnome org
- Subject: [xml] addSibling missing check for element equality
- Date: Wed, 11 Mar 2009 12:48:54 +0100
Hello,
The functions xmlAddNextSibling and xmlAddPrevSibling have a check which
checks if the element to be added is the same as the reference element.
xmlAddSibling however does not have such a check, resulting in the loss
of the element (the call to xmlUnlinkNode(elem) will unlink cur). I
think the equality check should be added to addSibling as well, like in
the attached patch.
Regards,
Kris Breuker
--- tree.c Sat Jan 17 14:45:34 2009
+++ tree_patched.c Wed Mar 11 12:16:22 2009
@@ -3103,6 +3103,14 @@
return(NULL);
}
+ if (cur == elem) {
+#ifdef DEBUG_TREE
+ xmlGenericError(xmlGenericErrorContext,
+ "xmlAddSibling : cur == elem\n");
+#endif
+ return(NULL);
+ }
+
/*
* Constant time is we can rely on the ->parent->last to find
* the last sibling.
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]