diff options
-rw-r--r-- | src/html/html_document.c | 11 | ||||
-rw-r--r-- | src/html/html_element.c | 2 | ||||
-rw-r--r-- | src/html/html_element.h | 2 | ||||
-rw-r--r-- | src/html/html_table_element.c | 5 | ||||
-rw-r--r-- | src/html/html_tablerow_element.c | 1 | ||||
-rw-r--r-- | src/html/html_tablesection_element.c | 1 |
6 files changed, 15 insertions, 7 deletions
diff --git a/src/html/html_document.c b/src/html/html_document.c index 34d8803..0d9ccc7 100644 --- a/src/html/html_document.c +++ b/src/html/html_document.c @@ -493,22 +493,20 @@ _dom_html_document_create_element_internal( dom_html_element **result) { dom_exception exc; - dom_html_element_type type; struct dom_html_element_create_params params; exc = dom_string_toupper(in_tag_name, true, ¶ms.name); if (exc != DOM_NO_ERR) return exc; - type = _dom_html_document_get_element_type(html, params.name); - + params.type = _dom_html_document_get_element_type(html, params.name); params.doc = html; params.namespace = namespace; params.prefix = prefix; - switch(type) { + switch(params.type) { case DOM_HTML_ELEMENT_TYPE__COUNT: - assert(type != DOM_HTML_ELEMENT_TYPE__COUNT); + assert(params.type != DOM_HTML_ELEMENT_TYPE__COUNT); break; case DOM_HTML_ELEMENT_TYPE_HTML: exc = _dom_html_html_element_create(¶ms, @@ -730,8 +728,7 @@ _dom_html_document_create_element_internal( (dom_html_isindex_element **) result); break; case DOM_HTML_ELEMENT_TYPE__UNKNOWN: - exc = _dom_html_element_create(¶ms, - result); + exc = _dom_html_element_create(¶ms, result); break; } diff --git a/src/html/html_element.c b/src/html/html_element.c index 513a5be..39aabda 100644 --- a/src/html/html_element.c +++ b/src/html/html_element.c @@ -69,6 +69,8 @@ dom_exception _dom_html_element_initialise( { dom_exception err; + el->type = params->type; + err = _dom_element_initialise(¶ms->doc->base, &el->base, params->name, params->namespace, params->prefix); if (err != DOM_NO_ERR) diff --git a/src/html/html_element.h b/src/html/html_element.h index 2d42abc..7d86727 100644 --- a/src/html/html_element.h +++ b/src/html/html_element.h @@ -22,9 +22,11 @@ struct dom_html_document; struct dom_html_element { struct dom_element base; /**< The base class */ + dom_html_element_type type; }; struct dom_html_element_create_params { + dom_html_element_type type; struct dom_html_document *doc; dom_string *name; dom_string *namespace; diff --git a/src/html/html_table_element.c b/src/html/html_table_element.c index 2139272..442e1d6 100644 --- a/src/html/html_table_element.c +++ b/src/html/html_table_element.c @@ -435,6 +435,7 @@ dom_exception dom_html_table_element_create_caption( ((dom_node_internal *) element)->owner; struct dom_html_element_create_params params = { + .type = DOM_HTML_ELEMENT_TYPE_CAPTION, .doc = doc, .name = doc->elements[DOM_HTML_ELEMENT_TYPE_CAPTION], .namespace = ((dom_node_internal *)element)->namespace, @@ -507,6 +508,7 @@ dom_exception dom_html_table_element_create_t_foot( ((dom_node_internal *) element)->owner; struct dom_html_element_create_params params = { + .type = DOM_HTML_ELEMENT_TYPE_TFOOT, .doc = doc, .name = doc->elements[DOM_HTML_ELEMENT_TYPE_TFOOT], .namespace = ((dom_node_internal *)element)->namespace, @@ -584,6 +586,7 @@ dom_exception dom_html_table_element_create_t_head( ((dom_node_internal *) element)->owner; struct dom_html_element_create_params params = { + .type = DOM_HTML_ELEMENT_TYPE_THEAD, .doc = doc, .name = doc->elements[DOM_HTML_ELEMENT_TYPE_THEAD], .namespace = ((dom_node_internal *)element)->namespace, @@ -666,6 +669,7 @@ dom_exception dom_html_table_element_create_t_body( ((dom_node_internal *) element)->owner; struct dom_html_element_create_params params = { + .type = DOM_HTML_ELEMENT_TYPE_TBODY, .doc = doc, .name = doc->elements[DOM_HTML_ELEMENT_TYPE_TBODY], .namespace = ((dom_node_internal *)element)->namespace, @@ -711,6 +715,7 @@ dom_exception dom_html_table_element_insert_row( ((dom_node_internal *) element)->owner; struct dom_html_element_create_params params = { + .type = DOM_HTML_ELEMENT_TYPE_TR, .doc = doc, .name = doc->elements[DOM_HTML_ELEMENT_TYPE_TR], .namespace = ((dom_node_internal *)element)->namespace, diff --git a/src/html/html_tablerow_element.c b/src/html/html_tablerow_element.c index 8773452..0d4f3eb 100644 --- a/src/html/html_tablerow_element.c +++ b/src/html/html_tablerow_element.c @@ -334,6 +334,7 @@ dom_exception dom_html_table_row_element_insert_cell( dom_exception exp; /*< Variable for getting the exceptions*/ struct dom_html_element_create_params params = { + .type = DOM_HTML_ELEMENT_TYPE_TD, .doc = doc, .name = doc->elements[DOM_HTML_ELEMENT_TYPE_TD], .namespace = ((dom_node_internal *)element)->namespace, diff --git a/src/html/html_tablesection_element.c b/src/html/html_tablesection_element.c index fadc0ed..d570e1c 100644 --- a/src/html/html_tablesection_element.c +++ b/src/html/html_tablesection_element.c @@ -210,6 +210,7 @@ dom_exception dom_html_table_section_element_insert_row( dom_exception exp; /*< Variable for getting the exceptions*/ struct dom_html_element_create_params params = { + .type = DOM_HTML_ELEMENT_TYPE_TR, .doc = doc, .name = doc->elements[DOM_HTML_ELEMENT_TYPE_TR], .namespace = ((dom_node_internal *)element)->namespace, |