summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMichael Drake <michael.drake@codethink.co.uk>2021-07-05 14:54:02 +0100
committerMichael Drake <michael.drake@codethink.co.uk>2021-07-05 14:54:02 +0100
commit631f016a9ccff344f4dcb0b57e8ef1cf275e175c (patch)
treefbe6e9fc34e0b73b217a34a5dfba0a5b1b2f4954 /src
parent78cd9ec509366e8a1fd61f077aba3a6537255ad1 (diff)
downloadlibdom-631f016a9ccff344f4dcb0b57e8ef1cf275e175c.tar.gz
libdom-631f016a9ccff344f4dcb0b57e8ef1cf275e175c.tar.bz2
Element: Change API to return a reference to callers.
Diffstat (limited to 'src')
-rw-r--r--src/core/element.c21
1 files changed, 9 insertions, 12 deletions
diff --git a/src/core/element.c b/src/core/element.c
index 66d0390..05dc8c6 100644
--- a/src/core/element.c
+++ b/src/core/element.c
@@ -1232,12 +1232,11 @@ dom_exception _dom_element_has_class(struct dom_element *element,
/**
* Get a named ancestor node
*
- * If the caller wants to keep the returned node around, it must take its
- * own ref. This call returns a borrow.
+ * The caller is responsible for unreffing the returned node.
*
* \param element Element to consider
* \param name Node name to look for
- * \param parent Pointer to location to receive borrowed node pointer
+ * \param ancestor Pointer to location to receive node.
* \return DOM_NO_ERR.
*/
dom_exception dom_element_named_ancestor_node(dom_element *element,
@@ -1254,7 +1253,7 @@ dom_exception dom_element_named_ancestor_node(dom_element *element,
assert(node->name != NULL);
if (dom_string_caseless_lwc_isequal(node->name, name)) {
- *ancestor = (dom_element *)node;
+ *ancestor = (dom_element *)dom_node_ref(node);
break;
}
}
@@ -1265,12 +1264,11 @@ dom_exception dom_element_named_ancestor_node(dom_element *element,
/**
* Get a named parent node
*
- * If the caller wants to keep the returned node around, it must take its
- * own ref. This call returns a borrow.
+ * The caller is responsible for unreffing the returned node.
*
* \param element Element to consider
* \param name Node name to look for
- * \param parent Pointer to location to receive borrowed node pointer
+ * \param parent Pointer to location to receive node pointer
* \return DOM_NO_ERR.
*/
dom_exception dom_element_named_parent_node(dom_element *element,
@@ -1287,7 +1285,7 @@ dom_exception dom_element_named_parent_node(dom_element *element,
assert(node->name != NULL);
if (dom_string_caseless_lwc_isequal(node->name, name)) {
- *parent = (dom_element *)node;
+ *parent = (dom_element *)dom_node_ref(node);
}
break;
}
@@ -1298,12 +1296,11 @@ dom_exception dom_element_named_parent_node(dom_element *element,
/**
* Get a named parent node
*
- * If the caller wants to keep the returned node around, it must take its
- * own ref. This call returns a borrow.
+ * The caller is responsible for unreffing the returned node.
*
* \param element Element to consider
* \param name Node name to look for
- * \param parent Pointer to location to receive borrowed node pointer
+ * \param parent Pointer to location to receive node pointer
* \return DOM_NO_ERR.
*/
dom_exception dom_element_parent_node(dom_element *element,
@@ -1317,7 +1314,7 @@ dom_exception dom_element_parent_node(dom_element *element,
if (node->type != DOM_ELEMENT_NODE)
continue;
- *parent = (dom_element *)node;
+ *parent = (dom_element *)dom_node_ref(node);
break;
}