summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/core/element.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/src/core/element.c b/src/core/element.c
index 16c6932..0d23347 100644
--- a/src/core/element.c
+++ b/src/core/element.c
@@ -253,12 +253,11 @@ dom_exception dom_element_set_attribute(struct dom_element *element,
if (a != NULL) {
/* Found an existing attribute, so replace its value */
- if (a->value != NULL)
- dom_string_unref(a->value);
+ dom_exception err;
- if (value != NULL)
- dom_string_ref(value);
- a->value = value;
+ err = dom_attr_set_value((struct dom_attr *) a, value);
+ if (err != DOM_NO_ERR)
+ return err;
} else {
/* No existing attribute, so create one */
dom_exception err;