From f6f2bcbcde72b1d074ffb690e928cb2e9fe6307b Mon Sep 17 00:00:00 2001 From: Michael Drake Date: Sun, 22 Jul 2012 23:28:45 +0100 Subject: Interned string cleanup, phase 6 (final): Move html.c to corestring. --- render/html.c | 226 ++++++++++------------------------------------------ utils/corestrings.c | 50 ++++++++++++ utils/corestrings.h | 15 ++++ 3 files changed, 109 insertions(+), 182 deletions(-) diff --git a/render/html.c b/render/html.c index 31c64edd4..b49f05f91 100644 --- a/render/html.c +++ b/render/html.c @@ -44,6 +44,7 @@ #include "render/imagemap.h" #include "render/layout.h" #include "render/search.h" +#include "utils/corestrings.h" #include "utils/http.h" #include "utils/log.h" #include "utils/messages.h" @@ -77,46 +78,6 @@ static nsurl *html_adblock_stylesheet_url; static nsurl *html_quirks_stylesheet_url; static nsurl *html_user_stylesheet_url; -/* pre-interned dom strings */ -static dom_string *html_dom_string_html; -static dom_string *html_dom_string_head; -static dom_string *html_dom_string_rel; -dom_string *html_dom_string_href; -static dom_string *html_dom_string_hreflang; -dom_string *html_dom_string_type; -static dom_string *html_dom_string_media; -static dom_string *html_dom_string_sizes; -static dom_string *html_dom_string_title; -static dom_string *html_dom_string_base; -static dom_string *html_dom_string_link; -static dom_string *html_dom_string_script; -dom_string *html_dom_string_text_javascript; -dom_string *html_dom_string_src; -dom_string *html_dom_string_target; -static dom_string *html_dom_string__parent; -static dom_string *html_dom_string__self; -static dom_string *html_dom_string__blank; -static dom_string *html_dom_string__top; -static dom_string *html_dom_string_http_equiv; -static dom_string *html_dom_string_content; -dom_string *html_dom_string_map; -dom_string *html_dom_string_id; -dom_string *html_dom_string_name; -dom_string *html_dom_string_area; -dom_string *html_dom_string_a; -dom_string *html_dom_string_nohref; -dom_string *html_dom_string_shape; -dom_string *html_dom_string_default; -dom_string *html_dom_string_rect; -dom_string *html_dom_string_rectangle; -dom_string *html_dom_string_coords; -dom_string *html_dom_string_circle; -dom_string *html_dom_string_poly; -dom_string *html_dom_string_polygon; -dom_string *html_dom_string_button; -dom_string *html_dom_string_input; -dom_string *html_dom_string_textarea; - static void html_destroy_objects(html_content *html) { @@ -564,7 +525,7 @@ static bool html_process_link(html_content *c, dom_node *node) memset(&link, 0, sizeof(struct content_rfc5988_link)); /* check that the relation exists - w3c spec says must be present */ - exc = dom_element_get_attribute(node, html_dom_string_rel, &atr_string); + exc = dom_element_get_attribute(node, corestring_dom_rel, &atr_string); if ((exc != DOM_NO_ERR) || (atr_string == NULL)) { return false; } @@ -576,14 +537,15 @@ static bool html_process_link(html_content *c, dom_node *node) } /* check that the href exists - w3c spec says must be present */ - exc = dom_element_get_attribute(node, html_dom_string_href, &atr_string); + exc = dom_element_get_attribute(node, corestring_dom_href, &atr_string); if ((exc != DOM_NO_ERR) || (atr_string == NULL)) { lwc_string_unref(link.rel); return false; } /* get nsurl */ - error = nsurl_join(c->base_url, dom_string_data(atr_string), &link.href); + error = nsurl_join(c->base_url, dom_string_data(atr_string), + &link.href); dom_string_unref(atr_string); if (error != NSERROR_OK) { lwc_string_unref(link.rel); @@ -592,28 +554,32 @@ static bool html_process_link(html_content *c, dom_node *node) /* look for optional properties -- we don't care if internment fails */ - exc = dom_element_get_attribute(node, html_dom_string_hreflang, &atr_string); + exc = dom_element_get_attribute(node, + corestring_dom_hreflang, &atr_string); if ((exc == DOM_NO_ERR) && (atr_string != NULL)) { /* get a lwc string containing the href lang */ exc = dom_string_intern(atr_string, &link.hreflang); dom_string_unref(atr_string); } - exc = dom_element_get_attribute(node, html_dom_string_type, &atr_string); + exc = dom_element_get_attribute(node, + corestring_dom_type, &atr_string); if ((exc == DOM_NO_ERR) && (atr_string != NULL)) { /* get a lwc string containing the type */ exc = dom_string_intern(atr_string, &link.type); dom_string_unref(atr_string); } - exc = dom_element_get_attribute(node, html_dom_string_media, &atr_string); + exc = dom_element_get_attribute(node, + corestring_dom_media, &atr_string); if ((exc == DOM_NO_ERR) && (atr_string != NULL)) { /* get a lwc string containing the media */ exc = dom_string_intern(atr_string, &link.media); dom_string_unref(atr_string); } - exc = dom_element_get_attribute(node, html_dom_string_sizes, &atr_string); + exc = dom_element_get_attribute(node, + corestring_dom_sizes, &atr_string); if ((exc == DOM_NO_ERR) && (atr_string != NULL)) { /* get a lwc string containing the sizes */ exc = dom_string_intern(atr_string, &link.sizes); @@ -674,7 +640,8 @@ static bool html_process_base(html_content *c, dom_node *node) dom_string *atr_string; /* get href attribute if present */ - exc = dom_element_get_attribute(node, html_dom_string_href, &atr_string); + exc = dom_element_get_attribute(node, + corestring_dom_href, &atr_string); if ((exc == DOM_NO_ERR) && (atr_string != NULL)) { nsurl *url; nserror error; @@ -695,7 +662,8 @@ static bool html_process_base(html_content *c, dom_node *node) return true; } - exc = dom_element_get_attribute(node, html_dom_string_target, &atr_string); + exc = dom_element_get_attribute(node, + corestring_dom_target, &atr_string); if ((exc == DOM_NO_ERR) && (atr_string != NULL)) { /* Validation rules from the HTML5 spec for the base element: * The target must be one of _blank, _self, _parent, or @@ -703,10 +671,14 @@ static bool html_process_base(html_content *c, dom_node *node) * underscore */ if (*dom_string_data(atr_string) != '_' || - dom_string_caseless_isequal(atr_string, html_dom_string__blank) || - dom_string_caseless_isequal(atr_string, html_dom_string__self) || - dom_string_caseless_isequal(atr_string, html_dom_string__parent) || - dom_string_caseless_isequal(atr_string, html_dom_string__top)) { + dom_string_caseless_lwc_isequal(atr_string, + corestring_lwc__blank) || + dom_string_caseless_lwc_isequal(atr_string, + corestring_lwc__self) || + dom_string_caseless_lwc_isequal(atr_string, + corestring_lwc__parent) || + dom_string_caseless_lwc_isequal(atr_string, + corestring_lwc__top)) { c->base_target = strdup(dom_string_data(atr_string)); } dom_string_unref(atr_string); @@ -745,16 +717,17 @@ static bool html_head(html_content *c, dom_node *head) exc = dom_node_get_node_name(node, &node_name); if ((exc == DOM_NO_ERR) && (node_name != NULL)) { - if (dom_string_caseless_isequal(node_name, - html_dom_string_title)) { + if (dom_string_caseless_lwc_isequal( + node_name, + corestring_lwc_title)) { html_process_title(c, node); - } else if (dom_string_caseless_isequal( + } else if (dom_string_caseless_lwc_isequal( node_name, - html_dom_string_base)) { + corestring_lwc_base)) { html_process_base(c, node); - } else if (dom_string_caseless_isequal( + } else if (dom_string_caseless_lwc_isequal( node_name, - html_dom_string_link)) { + corestring_lwc_link)) { html_process_link(c, node); } } @@ -786,7 +759,7 @@ static bool html_meta_refresh_process_element(html_content *c, dom_node *n) nsurl *nsurl; nserror error; - exc = dom_element_get_attribute(n, html_dom_string_http_equiv, &equiv); + exc = dom_element_get_attribute(n, corestring_dom_http_equiv, &equiv); if (exc != DOM_NO_ERR) return false; @@ -800,7 +773,7 @@ static bool html_meta_refresh_process_element(html_content *c, dom_node *n) dom_string_unref(equiv); - exc = dom_element_get_attribute(n, html_dom_string_content, &content); + exc = dom_element_get_attribute(n, corestring_dom_content, &content); if (exc != DOM_NO_ERR) return false; @@ -1453,7 +1426,7 @@ html_process_style_element(html_content *c, nserror error; /* type='text/css', or not present (invalid but common) */ - exc = dom_element_get_attribute(style, html_dom_string_type, &val); + exc = dom_element_get_attribute(style, corestring_dom_type, &val); if (exc == DOM_NO_ERR && val != NULL) { if (strcasecmp(dom_string_data(val), "text/css") != 0) { dom_string_unref(val); @@ -1463,7 +1436,7 @@ html_process_style_element(html_content *c, } /* media contains 'screen' or 'all' or not present */ - exc = dom_element_get_attribute(style, html_dom_string_media, &val); + exc = dom_element_get_attribute(style, corestring_dom_media, &val); if (exc == DOM_NO_ERR && val != NULL) { if (strcasestr(dom_string_data(val), "screen") == NULL && strcasestr(dom_string_data(val), @@ -1715,7 +1688,7 @@ html_process_stylesheet(dom_node *node, dom_string *name, void *vctx) /* rel= */ exc = dom_element_get_attribute(node, - html_dom_string_rel, &rel); + corestring_dom_rel, &rel); if (exc != DOM_NO_ERR || rel == NULL) return true; @@ -1730,7 +1703,7 @@ html_process_stylesheet(dom_node *node, dom_string *name, void *vctx) dom_string_unref(rel); /* type='text/css' or not present */ - exc = dom_element_get_attribute(node, html_dom_string_type, &type_attr); + exc = dom_element_get_attribute(node, corestring_dom_type, &type_attr); if (exc == DOM_NO_ERR && type_attr != NULL) { if (strcasecmp(dom_string_data(type_attr), "text/css") != 0) { dom_string_unref(type_attr); @@ -1740,7 +1713,7 @@ html_process_stylesheet(dom_node *node, dom_string *name, void *vctx) } /* media contains 'screen' or 'all' or not present */ - exc = dom_element_get_attribute(node, html_dom_string_media, &media); + exc = dom_element_get_attribute(node, corestring_dom_media, &media); if (exc == DOM_NO_ERR && media != NULL) { if (strcasestr(dom_string_data(media), "screen") == NULL && strcasestr(dom_string_data(media), "all") == NULL) { @@ -1751,7 +1724,7 @@ html_process_stylesheet(dom_node *node, dom_string *name, void *vctx) } /* href='...' */ - exc = dom_element_get_attribute(node, html_dom_string_href, &href); + exc = dom_element_get_attribute(node, corestring_dom_href, &href); if (exc != DOM_NO_ERR || href == NULL) return true; @@ -2008,7 +1981,8 @@ static bool html_convert(struct content *c) exc = dom_node_get_node_name(html, &node_name); if ((exc != DOM_NO_ERR) || (node_name == NULL) || - (!dom_string_caseless_isequal(node_name, html_dom_string_html))) { + (!dom_string_caseless_lwc_isequal(node_name, + corestring_lwc_html))) { LOG(("root element not html")); msg_data.error = messages_get("ParsingFail"); content_broadcast(c, CONTENT_MSG_ERROR, msg_data); @@ -2046,8 +2020,8 @@ static bool html_convert(struct content *c) if (head != NULL) { exc = dom_node_get_node_name(head, &node_name); if ((exc == DOM_NO_ERR) || (node_name != NULL)) { - if (!dom_string_caseless_isequal(node_name, - html_dom_string_head)) { + if (!dom_string_caseless_lwc_isequal(node_name, + corestring_lwc_head)) { dom_node_unref(head); LOG(("head element not found")); head = NULL; @@ -3129,59 +3103,6 @@ static void html_fini(void) { box_construct_fini(); -#define HTML_DOM_STRING_UNREF(NAME) \ - do { \ - if (html_dom_string_##NAME != NULL) { \ - dom_string_unref(html_dom_string_##NAME); \ - html_dom_string_##NAME = NULL; \ - } \ - } while (0) \ - - HTML_DOM_STRING_UNREF(html); - HTML_DOM_STRING_UNREF(head); - HTML_DOM_STRING_UNREF(rel); - HTML_DOM_STRING_UNREF(href); - HTML_DOM_STRING_UNREF(hreflang); - HTML_DOM_STRING_UNREF(type); - HTML_DOM_STRING_UNREF(media); - HTML_DOM_STRING_UNREF(sizes); - HTML_DOM_STRING_UNREF(title); - HTML_DOM_STRING_UNREF(base); - HTML_DOM_STRING_UNREF(src); - HTML_DOM_STRING_UNREF(text_javascript); - HTML_DOM_STRING_UNREF(script); - HTML_DOM_STRING_UNREF(link); - HTML_DOM_STRING_UNREF(target); - HTML_DOM_STRING_UNREF(_blank); - HTML_DOM_STRING_UNREF(_self); - HTML_DOM_STRING_UNREF(_parent); - HTML_DOM_STRING_UNREF(_top); - HTML_DOM_STRING_UNREF(content); - HTML_DOM_STRING_UNREF(map); - HTML_DOM_STRING_UNREF(id); - HTML_DOM_STRING_UNREF(name); - HTML_DOM_STRING_UNREF(area); - HTML_DOM_STRING_UNREF(a); - HTML_DOM_STRING_UNREF(nohref); - HTML_DOM_STRING_UNREF(shape); - HTML_DOM_STRING_UNREF(default); - HTML_DOM_STRING_UNREF(rect); - HTML_DOM_STRING_UNREF(rectangle); - HTML_DOM_STRING_UNREF(coords); - HTML_DOM_STRING_UNREF(circle); - HTML_DOM_STRING_UNREF(poly); - HTML_DOM_STRING_UNREF(polygon); - HTML_DOM_STRING_UNREF(button); - HTML_DOM_STRING_UNREF(input); - HTML_DOM_STRING_UNREF(textarea); - -#undef HTML_DOM_STRING_UNREF - - if (html_dom_string_http_equiv != NULL) { - dom_string_unref(html_dom_string_http_equiv); - html_dom_string_http_equiv = NULL; - } - if (html_user_stylesheet_url != NULL) { nsurl_unref(html_user_stylesheet_url); html_user_stylesheet_url = NULL; @@ -3235,7 +3156,6 @@ nserror html_init(void) uint32_t i; lwc_error lerror; nserror error; - dom_exception exc; /* returned by libdom functions */ lerror = lwc_intern_string("charset", SLEN("charset"), &html_charset); if (lerror != lwc_error_ok) { @@ -3263,64 +3183,6 @@ nserror html_init(void) if (error != NSERROR_OK) goto error; -#define HTML_DOM_STRING_INTERN(NAME) \ - exc = dom_string_create_interned((const uint8_t *)#NAME, \ - sizeof(#NAME) - 1, \ - &html_dom_string_##NAME ); \ - if ((exc != DOM_NO_ERR) || (html_dom_string_##NAME == NULL)) \ - goto error - - HTML_DOM_STRING_INTERN(html); - HTML_DOM_STRING_INTERN(head); - HTML_DOM_STRING_INTERN(rel); - HTML_DOM_STRING_INTERN(href); - HTML_DOM_STRING_INTERN(hreflang); - HTML_DOM_STRING_INTERN(type); - HTML_DOM_STRING_INTERN(media); - HTML_DOM_STRING_INTERN(sizes); - HTML_DOM_STRING_INTERN(title); - HTML_DOM_STRING_INTERN(base); - HTML_DOM_STRING_INTERN(link); - HTML_DOM_STRING_INTERN(script); - HTML_DOM_STRING_INTERN(src); - HTML_DOM_STRING_INTERN(target); - HTML_DOM_STRING_INTERN(_blank); - HTML_DOM_STRING_INTERN(_self); - HTML_DOM_STRING_INTERN(_parent); - HTML_DOM_STRING_INTERN(_top); - HTML_DOM_STRING_INTERN(content); - HTML_DOM_STRING_INTERN(map); - HTML_DOM_STRING_INTERN(id); - HTML_DOM_STRING_INTERN(name); - HTML_DOM_STRING_INTERN(area); - HTML_DOM_STRING_INTERN(a); - HTML_DOM_STRING_INTERN(nohref); - HTML_DOM_STRING_INTERN(shape); - HTML_DOM_STRING_INTERN(default); - HTML_DOM_STRING_INTERN(rect); - HTML_DOM_STRING_INTERN(rectangle); - HTML_DOM_STRING_INTERN(coords); - HTML_DOM_STRING_INTERN(circle); - HTML_DOM_STRING_INTERN(poly); - HTML_DOM_STRING_INTERN(polygon); - HTML_DOM_STRING_INTERN(button); - HTML_DOM_STRING_INTERN(input); - HTML_DOM_STRING_INTERN(textarea); - -#undef HTML_DOM_STRING_INTERN - - exc = dom_string_create_interned((const uint8_t *) "text/javascript", - SLEN("text/javascript"), - &html_dom_string_text_javascript); - if ((exc != DOM_NO_ERR) || (html_dom_string_text_javascript == NULL)) - goto error; - - exc = dom_string_create_interned((const uint8_t *) "http-equiv", - SLEN("http-equiv"), - &html_dom_string_http_equiv); - if ((exc != DOM_NO_ERR) || (html_dom_string_http_equiv == NULL)) - goto error; - error = box_construct_init(); if (error != NSERROR_OK) goto error; diff --git a/utils/corestrings.c b/utils/corestrings.c index 02b0b53e1..5def4e07f 100644 --- a/utils/corestrings.c +++ b/utils/corestrings.c @@ -31,6 +31,7 @@ lwc_string *corestring_lwc_abscenter; lwc_string *corestring_lwc_absmiddle; lwc_string *corestring_lwc_align; lwc_string *corestring_lwc_applet; +lwc_string *corestring_lwc_base; lwc_string *corestring_lwc_baseline; lwc_string *corestring_lwc_body; lwc_string *corestring_lwc_bottom; @@ -49,12 +50,15 @@ lwc_string *corestring_lwc_h3; lwc_string *corestring_lwc_h4; lwc_string *corestring_lwc_h5; lwc_string *corestring_lwc_h6; +lwc_string *corestring_lwc_head; lwc_string *corestring_lwc_hr; +lwc_string *corestring_lwc_html; lwc_string *corestring_lwc_iframe; lwc_string *corestring_lwc_img; lwc_string *corestring_lwc_input; lwc_string *corestring_lwc_justify; lwc_string *corestring_lwc_left; +lwc_string *corestring_lwc_link; lwc_string *corestring_lwc_middle; lwc_string *corestring_lwc_object; lwc_string *corestring_lwc_p; @@ -70,11 +74,16 @@ lwc_string *corestring_lwc_td; lwc_string *corestring_lwc_text; lwc_string *corestring_lwc_textarea; lwc_string *corestring_lwc_texttop; +lwc_string *corestring_lwc_title; lwc_string *corestring_lwc_tfoot; lwc_string *corestring_lwc_th; lwc_string *corestring_lwc_thead; lwc_string *corestring_lwc_top; lwc_string *corestring_lwc_tr; +lwc_string *corestring_lwc__blank; +lwc_string *corestring_lwc__parent; +lwc_string *corestring_lwc__self; +lwc_string *corestring_lwc__top; /* dom_string strings */ dom_string *corestring_dom_a; @@ -88,18 +97,24 @@ dom_string *corestring_dom_cellpadding; dom_string *corestring_dom_cellspacing; dom_string *corestring_dom_color; dom_string *corestring_dom_cols; +dom_string *corestring_dom_content; dom_string *corestring_dom_coords; dom_string *corestring_dom_height; dom_string *corestring_dom_href; +dom_string *corestring_dom_hreflang; dom_string *corestring_dom_hspace; +dom_string *corestring_dom_http_equiv; dom_string *corestring_dom_id; dom_string *corestring_dom_link; dom_string *corestring_dom_map; +dom_string *corestring_dom_media; dom_string *corestring_dom_name; dom_string *corestring_dom_nohref; dom_string *corestring_dom_rect; +dom_string *corestring_dom_rel; dom_string *corestring_dom_rows; dom_string *corestring_dom_size; +dom_string *corestring_dom_sizes; dom_string *corestring_dom_shape; dom_string *corestring_dom_src; dom_string *corestring_dom_target; @@ -130,6 +145,7 @@ void corestrings_fini(void) CSS_LWC_STRING_UNREF(absmiddle); CSS_LWC_STRING_UNREF(align); CSS_LWC_STRING_UNREF(applet); + CSS_LWC_STRING_UNREF(base); CSS_LWC_STRING_UNREF(baseline); CSS_LWC_STRING_UNREF(body); CSS_LWC_STRING_UNREF(bottom); @@ -148,12 +164,15 @@ void corestrings_fini(void) CSS_LWC_STRING_UNREF(h4); CSS_LWC_STRING_UNREF(h5); CSS_LWC_STRING_UNREF(h6); + CSS_LWC_STRING_UNREF(head); CSS_LWC_STRING_UNREF(hr); + CSS_LWC_STRING_UNREF(html); CSS_LWC_STRING_UNREF(iframe); CSS_LWC_STRING_UNREF(img); CSS_LWC_STRING_UNREF(input); CSS_LWC_STRING_UNREF(justify); CSS_LWC_STRING_UNREF(left); + CSS_LWC_STRING_UNREF(link); CSS_LWC_STRING_UNREF(middle); CSS_LWC_STRING_UNREF(object); CSS_LWC_STRING_UNREF(p); @@ -169,11 +188,16 @@ void corestrings_fini(void) CSS_LWC_STRING_UNREF(text); CSS_LWC_STRING_UNREF(textarea); CSS_LWC_STRING_UNREF(texttop); + CSS_LWC_STRING_UNREF(title); CSS_LWC_STRING_UNREF(tfoot); CSS_LWC_STRING_UNREF(th); CSS_LWC_STRING_UNREF(thead); CSS_LWC_STRING_UNREF(top); CSS_LWC_STRING_UNREF(tr); + CSS_LWC_STRING_UNREF(_blank); + CSS_LWC_STRING_UNREF(_parent); + CSS_LWC_STRING_UNREF(_self); + CSS_LWC_STRING_UNREF(_top); #undef CSS_LWC_STRING_UNREF #define CSS_DOM_STRING_UNREF(NAME) \ @@ -195,18 +219,24 @@ void corestrings_fini(void) CSS_DOM_STRING_UNREF(cellspacing); CSS_DOM_STRING_UNREF(color); CSS_DOM_STRING_UNREF(cols); + CSS_DOM_STRING_UNREF(content); CSS_DOM_STRING_UNREF(coords); CSS_DOM_STRING_UNREF(height); CSS_DOM_STRING_UNREF(href); + CSS_DOM_STRING_UNREF(hreflang); CSS_DOM_STRING_UNREF(hspace); + CSS_DOM_STRING_UNREF(http_equiv); CSS_DOM_STRING_UNREF(id); CSS_DOM_STRING_UNREF(link); CSS_DOM_STRING_UNREF(map); + CSS_DOM_STRING_UNREF(media); CSS_DOM_STRING_UNREF(name); CSS_DOM_STRING_UNREF(nohref); CSS_DOM_STRING_UNREF(rect); + CSS_DOM_STRING_UNREF(rel); CSS_DOM_STRING_UNREF(rows); CSS_DOM_STRING_UNREF(size); + CSS_DOM_STRING_UNREF(sizes); CSS_DOM_STRING_UNREF(shape); CSS_DOM_STRING_UNREF(src); CSS_DOM_STRING_UNREF(target); @@ -248,6 +278,7 @@ nserror corestrings_init(void) CSS_LWC_STRING_INTERN(absmiddle); CSS_LWC_STRING_INTERN(align); CSS_LWC_STRING_INTERN(applet); + CSS_LWC_STRING_INTERN(base); CSS_LWC_STRING_INTERN(baseline); CSS_LWC_STRING_INTERN(body); CSS_LWC_STRING_INTERN(bottom); @@ -266,12 +297,15 @@ nserror corestrings_init(void) CSS_LWC_STRING_INTERN(h4); CSS_LWC_STRING_INTERN(h5); CSS_LWC_STRING_INTERN(h6); + CSS_LWC_STRING_INTERN(head); CSS_LWC_STRING_INTERN(hr); + CSS_LWC_STRING_INTERN(html); CSS_LWC_STRING_INTERN(iframe); CSS_LWC_STRING_INTERN(img); CSS_LWC_STRING_INTERN(input); CSS_LWC_STRING_INTERN(justify); CSS_LWC_STRING_INTERN(left); + CSS_LWC_STRING_INTERN(link); CSS_LWC_STRING_INTERN(middle); CSS_LWC_STRING_INTERN(object); CSS_LWC_STRING_INTERN(p); @@ -287,11 +321,16 @@ nserror corestrings_init(void) CSS_LWC_STRING_INTERN(text); CSS_LWC_STRING_INTERN(textarea); CSS_LWC_STRING_INTERN(texttop); + CSS_LWC_STRING_INTERN(title); CSS_LWC_STRING_INTERN(tfoot); CSS_LWC_STRING_INTERN(th); CSS_LWC_STRING_INTERN(thead); CSS_LWC_STRING_INTERN(top); CSS_LWC_STRING_INTERN(tr); + CSS_LWC_STRING_INTERN(_blank); + CSS_LWC_STRING_INTERN(_parent); + CSS_LWC_STRING_INTERN(_self); + CSS_LWC_STRING_INTERN(_top); #undef CSS_LWC_STRING_INTERN #define CSS_DOM_STRING_INTERN(NAME) \ @@ -318,18 +357,23 @@ nserror corestrings_init(void) CSS_DOM_STRING_INTERN(cellspacing); CSS_DOM_STRING_INTERN(color); CSS_DOM_STRING_INTERN(cols); + CSS_DOM_STRING_INTERN(content); CSS_DOM_STRING_INTERN(coords); CSS_DOM_STRING_INTERN(height); CSS_DOM_STRING_INTERN(href); + CSS_DOM_STRING_INTERN(hreflang); CSS_DOM_STRING_INTERN(hspace); CSS_DOM_STRING_INTERN(id); CSS_DOM_STRING_INTERN(link); CSS_DOM_STRING_INTERN(map); + CSS_DOM_STRING_INTERN(media); CSS_DOM_STRING_INTERN(name); CSS_DOM_STRING_INTERN(nohref); CSS_DOM_STRING_INTERN(rect); + CSS_DOM_STRING_INTERN(rel); CSS_DOM_STRING_INTERN(rows); CSS_DOM_STRING_INTERN(size); + CSS_DOM_STRING_INTERN(sizes); CSS_DOM_STRING_INTERN(shape); CSS_DOM_STRING_INTERN(src); CSS_DOM_STRING_INTERN(target); @@ -347,6 +391,12 @@ nserror corestrings_init(void) if ((exc != DOM_NO_ERR) || (corestring_dom_text_javascript == NULL)) goto error; + exc = dom_string_create_interned((const uint8_t *) "http-equiv", + SLEN("http-equiv"), + &corestring_dom_http_equiv); + if ((exc != DOM_NO_ERR) || (corestring_dom_http_equiv == NULL)) + goto error; + return NSERROR_OK; error: diff --git a/utils/corestrings.h b/utils/corestrings.h index 2986eb140..19c264006 100644 --- a/utils/corestrings.h +++ b/utils/corestrings.h @@ -35,6 +35,7 @@ extern lwc_string *corestring_lwc_abscenter; extern lwc_string *corestring_lwc_absmiddle; extern lwc_string *corestring_lwc_align; extern lwc_string *corestring_lwc_applet; +extern lwc_string *corestring_lwc_base; extern lwc_string *corestring_lwc_baseline; extern lwc_string *corestring_lwc_body; extern lwc_string *corestring_lwc_bottom; @@ -53,12 +54,15 @@ extern lwc_string *corestring_lwc_h3; extern lwc_string *corestring_lwc_h4; extern lwc_string *corestring_lwc_h5; extern lwc_string *corestring_lwc_h6; +extern lwc_string *corestring_lwc_head; extern lwc_string *corestring_lwc_hr; +extern lwc_string *corestring_lwc_html; extern lwc_string *corestring_lwc_iframe; extern lwc_string *corestring_lwc_img; extern lwc_string *corestring_lwc_input; extern lwc_string *corestring_lwc_justify; extern lwc_string *corestring_lwc_left; +extern lwc_string *corestring_lwc_link; extern lwc_string *corestring_lwc_middle; extern lwc_string *corestring_lwc_object; extern lwc_string *corestring_lwc_p; @@ -74,11 +78,16 @@ extern lwc_string *corestring_lwc_td; extern lwc_string *corestring_lwc_text; extern lwc_string *corestring_lwc_textarea; extern lwc_string *corestring_lwc_texttop; +extern lwc_string *corestring_lwc_title; extern lwc_string *corestring_lwc_tfoot; extern lwc_string *corestring_lwc_th; extern lwc_string *corestring_lwc_thead; extern lwc_string *corestring_lwc_top; extern lwc_string *corestring_lwc_tr; +extern lwc_string *corestring_lwc__blank; +extern lwc_string *corestring_lwc__parent; +extern lwc_string *corestring_lwc__self; +extern lwc_string *corestring_lwc__top; struct dom_string; @@ -94,18 +103,24 @@ extern struct dom_string *corestring_dom_cellpadding; extern struct dom_string *corestring_dom_cellspacing; extern struct dom_string *corestring_dom_color; extern struct dom_string *corestring_dom_cols; +extern struct dom_string *corestring_dom_content; extern struct dom_string *corestring_dom_coords; extern struct dom_string *corestring_dom_height; extern struct dom_string *corestring_dom_href; +extern struct dom_string *corestring_dom_hreflang; extern struct dom_string *corestring_dom_hspace; +extern struct dom_string *corestring_dom_http_equiv; extern struct dom_string *corestring_dom_id; extern struct dom_string *corestring_dom_link; extern struct dom_string *corestring_dom_map; +extern struct dom_string *corestring_dom_media; extern struct dom_string *corestring_dom_name; extern struct dom_string *corestring_dom_nohref; extern struct dom_string *corestring_dom_rect; +extern struct dom_string *corestring_dom_rel; extern struct dom_string *corestring_dom_rows; extern struct dom_string *corestring_dom_size; +extern struct dom_string *corestring_dom_sizes; extern struct dom_string *corestring_dom_shape; extern struct dom_string *corestring_dom_src; extern struct dom_string *corestring_dom_target; -- cgit v1.2.3