summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/core/document.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/src/core/document.c b/src/core/document.c
index 456d906..6284897 100644
--- a/src/core/document.c
+++ b/src/core/document.c
@@ -1233,14 +1233,15 @@ dom_exception _dom_find_element_by_id(dom_node_internal *root,
dom_string *real_id;
_dom_element_get_id((dom_element *) node, &real_id);
+ if (real_id != NULL) {
+ if (dom_string_isequal(real_id, id)) {
+ dom_string_unref(real_id);
+ *result = (dom_element *) node;
+ return DOM_NO_ERR;
+ }
- if (dom_string_isequal(real_id, id)) {
dom_string_unref(real_id);
- *result = (dom_element *) node;
- return DOM_NO_ERR;
}
-
- dom_string_unref(real_id);
}
if (node->first_child != NULL) {