diff options
author | Daniel Silverstone <dsilvers@digital-scurf.org> | 2014-07-30 17:50:04 +0100 |
---|---|---|
committer | Daniel Silverstone <dsilvers@digital-scurf.org> | 2014-07-30 17:50:04 +0100 |
commit | 57ea08b15ad6262ca9ba17a83a41c43111918617 (patch) | |
tree | f44bcaba5ee6ec38539ba18177accdd2a38f6640 /src/html | |
parent | 576557609560a6577b9a47fd0fd44c4bcda8b5b8 (diff) | |
parent | 1eaa38650c5a828ff47cc145ac843bde3840ec1c (diff) | |
download | libdom-57ea08b15ad6262ca9ba17a83a41c43111918617.tar.gz libdom-57ea08b15ad6262ca9ba17a83a41c43111918617.tar.bz2 |
Merge remote-tracking branch 'origin/rupindersingh/libdom_recovered'
Diffstat (limited to 'src/html')
-rw-r--r-- | src/html/html_frame_element.c | 7 | ||||
-rw-r--r-- | src/html/html_iframe_element.c | 7 | ||||
-rw-r--r-- | src/html/html_style_element.c | 42 | ||||
-rw-r--r-- | src/html/html_style_element.h | 2 | ||||
-rw-r--r-- | src/html/html_tablesection_element.c | 32 |
5 files changed, 35 insertions, 55 deletions
diff --git a/src/html/html_frame_element.c b/src/html/html_frame_element.c index 16534b5..a03b32d 100644 --- a/src/html/html_frame_element.c +++ b/src/html/html_frame_element.c @@ -281,7 +281,10 @@ dom_exception dom_html_frame_element_get_content_document( dom_html_frame_element *ele, dom_document **content_document) { - *content_document = dom_node_get_owner(ele); - return DOM_NO_ERR; + /* We don't support creating documents + from within here */ + UNUSED(ele); + UNUSED(content_document); + return DOM_NOT_SUPPORTED_ERR; } diff --git a/src/html/html_iframe_element.c b/src/html/html_iframe_element.c index 6f15b3e..0972d56 100644 --- a/src/html/html_iframe_element.c +++ b/src/html/html_iframe_element.c @@ -263,7 +263,10 @@ dom_exception dom_html_iframe_element_get_content_document( dom_html_iframe_element *ele, dom_document **content_document) { - *content_document = dom_node_get_owner(ele); - return DOM_NO_ERR; + /* We don't support creating documents + from within here */ + UNUSED(ele); + UNUSED(content_document); + return DOM_NOT_SUPPORTED_ERR; } diff --git a/src/html/html_style_element.c b/src/html/html_style_element.c index 681f0b8..c97955e 100644 --- a/src/html/html_style_element.c +++ b/src/html/html_style_element.c @@ -55,7 +55,6 @@ dom_exception _dom_html_style_element_initialise(struct dom_html_document *doc, struct dom_html_style_element *ele) { dom_string *name = NULL; - dom_string *media_default = NULL; dom_exception err; err = dom_string_create((const uint8_t *) "STYLE", SLEN("STYLE"), @@ -63,12 +62,6 @@ dom_exception _dom_html_style_element_initialise(struct dom_html_document *doc, if (err != DOM_NO_ERR) return err; - err = dom_string_create((const uint8_t *) "screen", SLEN("screen"), - &media_default); - if (err != DOM_NO_ERR) - return err; - - ele->media = media_default; err = _dom_html_element_initialise(doc, &ele->base, name, NULL, NULL); dom_string_unref(name); @@ -168,7 +161,7 @@ dom_exception dom_html_style_element_set_##attr( \ #define SIMPLE_GET_SET(attr) SIMPLE_GET(attr) SIMPLE_SET(attr) SIMPLE_GET_SET(type); -SIMPLE_SET(media); +SIMPLE_GET_SET(media); /** * Get the disabled property @@ -198,36 +191,3 @@ dom_exception dom_html_style_element_set_disabled(dom_html_style_element *ele, SLEN("disabled"), disabled); } -/** - * Get the media property - * - * \param ele The dom_html_style_element object - * \param media The returned status - * \return DOM_NO_ERR on success, appropriate dom_exception on failure. - */ -dom_exception dom_html_style_element_get_media(dom_html_style_element *ele, - dom_string **media) -{ - dom_html_document *doc; - bool has_value = false; - dom_exception err; - - doc = (dom_html_document *) ((dom_node_internal *) ele)->owner; - - err = dom_element_has_attribute(ele, - doc->memoised[hds_media], &has_value); - if(err !=DOM_NO_ERR) - return err; - - if(has_value) { - return dom_element_get_attribute(ele, - doc->memoised[hds_media], media); - } - - *media = ele->media; - if (*media != NULL) - dom_string_ref(*media); - return DOM_NO_ERR; - -} - diff --git a/src/html/html_style_element.h b/src/html/html_style_element.h index 285da94..e7a47e5 100644 --- a/src/html/html_style_element.h +++ b/src/html/html_style_element.h @@ -15,8 +15,6 @@ struct dom_html_style_element { struct dom_html_element base; /**< The base class */ - dom_string *media; - /**< The default string value for the media attribute*/ }; /* Create a dom_html_style_element object */ diff --git a/src/html/html_tablesection_element.c b/src/html/html_tablesection_element.c index af4ccb6..dbc0902 100644 --- a/src/html/html_tablesection_element.c +++ b/src/html/html_tablesection_element.c @@ -217,26 +217,42 @@ dom_exception dom_html_table_section_element_insert_row( return exp; exp = dom_html_table_section_element_get_rows(element, &rows); - if(exp != DOM_NO_ERR) + if(exp != DOM_NO_ERR) { + dom_node_unref(new_row); + new_row = NULL; return exp; + } exp = dom_html_collection_get_length(rows, &len); - if(exp != DOM_NO_ERR) + + + if(exp != DOM_NO_ERR) { + dom_node_unref(new_row); + new_row = NULL; + dom_html_collection_unref(rows); return exp; + } if(index < -1 || index > (int32_t)len) { /* Check for index validity */ + dom_html_collection_unref(rows); return DOM_INDEX_SIZE_ERR; } else if(index == -1 || index == (int32_t)len) { - return _dom_node_append_child((dom_node_internal *)element, - (dom_node_internal *)*new_row, - (dom_node_internal **)new_row); + dom_node *new_node; + dom_html_collection_unref(rows); + return dom_node_append_child(element, + *new_row, + &new_node); } else { + dom_node *new_node; + dom_html_collection_item(rows, index, &node); - return _dom_node_insert_before((dom_node_internal *)element, - (dom_node_internal *)*new_row, (dom_node_internal *)node, - (dom_node_internal **)new_row); + dom_html_collection_unref(rows); + + return dom_node_insert_before(element, + *new_row, node, + &new_node); } } |