netsurf: branch master updated. release/3.0-995-gae6874d
by NetSurf Browser Project
Gitweb links:
...log http://git.netsurf-browser.org/netsurf.git/shortlog/ae6874d3088a46a3d02c6...
...commit http://git.netsurf-browser.org/netsurf.git/commit/ae6874d3088a46a3d02c64e...
...tree http://git.netsurf-browser.org/netsurf.git/tree/ae6874d3088a46a3d02c64ec7...
The branch, master has been updated
via ae6874d3088a46a3d02c64ec7e466baaf03a991f (commit)
from 5787f8335ea552e9011d989fc5d6473833bc1126 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commitdiff http://git.netsurf-browser.org/netsurf.git/commit/?id=ae6874d3088a46a3d02...
commit ae6874d3088a46a3d02c64ec7e466baaf03a991f
Author: Michael Drake <tlsa(a)netsurf-browser.org>
Commit: Michael Drake <tlsa(a)netsurf-browser.org>
Just ref a corestring.
diff --git a/utils/nsurl.c b/utils/nsurl.c
index 61f849e..77cbc6d 100644
--- a/utils/nsurl.c
+++ b/utils/nsurl.c
@@ -26,6 +26,7 @@
#include <stdlib.h>
#include <string.h>
+#include "utils/corestrings.h"
#include "utils/errors.h"
#include "utils/log.h"
#include "utils/nsurl.h"
@@ -819,11 +820,8 @@ static nserror nsurl__create_from_section(const char * const url_s,
switch (section) {
case URL_SCHEME:
if (length == 0) {
- /* No scheme, assuming http, and add to URL */
- if (lwc_intern_string("http", SLEN("http"),
- &url->scheme) != lwc_error_ok) {
- return NSERROR_NOMEM;
- }
+ /* No scheme, assuming http */
+ url->scheme = lwc_string_ref(corestring_lwc_http);
} else {
/* Add scheme to URL */
if (lwc_intern_string(norm_start, length,
-----------------------------------------------------------------------
Summary of changes:
utils/nsurl.c | 8 +++-----
1 files changed, 3 insertions(+), 5 deletions(-)
diff --git a/utils/nsurl.c b/utils/nsurl.c
index 61f849e..77cbc6d 100644
--- a/utils/nsurl.c
+++ b/utils/nsurl.c
@@ -26,6 +26,7 @@
#include <stdlib.h>
#include <string.h>
+#include "utils/corestrings.h"
#include "utils/errors.h"
#include "utils/log.h"
#include "utils/nsurl.h"
@@ -819,11 +820,8 @@ static nserror nsurl__create_from_section(const char * const url_s,
switch (section) {
case URL_SCHEME:
if (length == 0) {
- /* No scheme, assuming http, and add to URL */
- if (lwc_intern_string("http", SLEN("http"),
- &url->scheme) != lwc_error_ok) {
- return NSERROR_NOMEM;
- }
+ /* No scheme, assuming http */
+ url->scheme = lwc_string_ref(corestring_lwc_http);
} else {
/* Add scheme to URL */
if (lwc_intern_string(norm_start, length,
--
NetSurf Browser
9 years
netsurf: branch master updated. release/3.0-994-g5787f83
by NetSurf Browser Project
Gitweb links:
...log http://git.netsurf-browser.org/netsurf.git/shortlog/5787f8335ea552e9011d9...
...commit http://git.netsurf-browser.org/netsurf.git/commit/5787f8335ea552e9011d989...
...tree http://git.netsurf-browser.org/netsurf.git/tree/5787f8335ea552e9011d989fc...
The branch, master has been updated
via 5787f8335ea552e9011d989fc5d6473833bc1126 (commit)
from dab6d7961ea6fb70aa6021e5dc7a189915b0c10c (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commitdiff http://git.netsurf-browser.org/netsurf.git/commit/?id=5787f8335ea552e9011...
commit 5787f8335ea552e9011d989fc5d6473833bc1126
Author: Michael Drake <tlsa(a)netsurf-browser.org>
Commit: Michael Drake <tlsa(a)netsurf-browser.org>
Simplify and optimise icon handling.
diff --git a/desktop/browser.c b/desktop/browser.c
index d94a287..a33c1b6 100644
--- a/desktop/browser.c
+++ b/desktop/browser.c
@@ -967,7 +967,6 @@ static nserror browser_window_favicon_callback(hlcache_handle *c,
static void browser_window_update_favicon(hlcache_handle *c,
struct browser_window *bw, struct content_rfc5988_link *link)
{
- lwc_string *icon_str;
nsurl *nsref = NULL;
nsurl *nsurl;
nserror error;
@@ -986,20 +985,14 @@ static void browser_window_update_favicon(hlcache_handle *c,
bw->failed_favicon = false;
if (link == NULL) {
- /* look for favicon metadata link */
- if (lwc_intern_string("icon", SLEN("icon"),
- &icon_str) == lwc_error_ok) {
- link = content_find_rfc5988_link(c, icon_str);
- lwc_string_unref(icon_str);
- }
+ /* Look for "icon" */
+ link = content_find_rfc5988_link(c, corestring_lwc_icon);
}
if (link == NULL) {
- if (lwc_intern_string("shortcut icon", SLEN("shortcut icon"),
- &icon_str) == lwc_error_ok) {
- link = content_find_rfc5988_link(c, icon_str);
- lwc_string_unref(icon_str);
- }
+ /* Look for "shortcut icon" */
+ link = content_find_rfc5988_link(c,
+ corestring_lwc_shortcut_icon);
}
if (link == NULL) {
@@ -1404,34 +1397,17 @@ static nserror browser_window_callback(hlcache_handle *c,
case CONTENT_MSG_LINK: /* content has an rfc5988 link element */
{
- lwc_string *icon_str;
- lwc_string *shortcut_icon_str;
- bool icon_match = false;
- bool shortcut_icon_match = false;
-
- if (lwc_intern_string("icon", SLEN("icon"),
- &icon_str) == lwc_error_ok) {
- if (lwc_string_caseless_isequal(
- event->data.rfc5988_link->rel,
- icon_str,
- &icon_match) != lwc_error_ok) {
- icon_match = false;
- }
- lwc_string_unref(icon_str);
- }
-
- if (lwc_intern_string("shortcut icon", SLEN("shortcut icon"),
- &shortcut_icon_str) == lwc_error_ok) {
- if (lwc_string_caseless_isequal(
- event->data.rfc5988_link->rel,
- shortcut_icon_str,
- &shortcut_icon_match) != lwc_error_ok) {
- shortcut_icon_match = false;
- }
- lwc_string_unref(shortcut_icon_str);
- }
+ bool match;
- if (icon_match || shortcut_icon_match) {
+ /* Handle "icon" and "shortcut icon" */
+ if ((lwc_string_caseless_isequal(
+ event->data.rfc5988_link->rel,
+ corestring_lwc_icon,
+ &match) == lwc_error_ok && match) ||
+ (lwc_string_caseless_isequal(
+ event->data.rfc5988_link->rel,
+ corestring_lwc_shortcut_icon,
+ &match) == lwc_error_ok && match)) {
/* it's a favicon perhaps start a fetch for it */
browser_window_update_favicon(c, bw,
event->data.rfc5988_link);
diff --git a/utils/corestrings.c b/utils/corestrings.c
index 1a0c962..47279c3 100644
--- a/utils/corestrings.c
+++ b/utils/corestrings.c
@@ -63,6 +63,7 @@ lwc_string *corestring_lwc_hr;
lwc_string *corestring_lwc_html;
lwc_string *corestring_lwc_http;
lwc_string *corestring_lwc_https;
+lwc_string *corestring_lwc_icon;
lwc_string *corestring_lwc_iframe;
lwc_string *corestring_lwc_image;
lwc_string *corestring_lwc_img;
@@ -94,6 +95,7 @@ lwc_string *corestring_lwc_resource;
lwc_string *corestring_lwc_right;
lwc_string *corestring_lwc_search;
lwc_string *corestring_lwc_select;
+lwc_string *corestring_lwc_shortcut_icon;
lwc_string *corestring_lwc_src;
lwc_string *corestring_lwc_style;
lwc_string *corestring_lwc_submit;
@@ -315,6 +317,7 @@ void corestrings_fini(void)
CSS_LWC_STRING_UNREF(html);
CSS_LWC_STRING_UNREF(http);
CSS_LWC_STRING_UNREF(https);
+ CSS_LWC_STRING_UNREF(icon);
CSS_LWC_STRING_UNREF(iframe);
CSS_LWC_STRING_UNREF(image);
CSS_LWC_STRING_UNREF(img);
@@ -346,6 +349,7 @@ void corestrings_fini(void)
CSS_LWC_STRING_UNREF(right);
CSS_LWC_STRING_UNREF(search);
CSS_LWC_STRING_UNREF(select);
+ CSS_LWC_STRING_UNREF(shortcut_icon);
CSS_LWC_STRING_UNREF(src);
CSS_LWC_STRING_UNREF(style);
CSS_LWC_STRING_UNREF(submit);
@@ -591,6 +595,7 @@ nserror corestrings_init(void)
CSS_LWC_STRING_INTERN(html);
CSS_LWC_STRING_INTERN(http);
CSS_LWC_STRING_INTERN(https);
+ CSS_LWC_STRING_INTERN(icon);
CSS_LWC_STRING_INTERN(iframe);
CSS_LWC_STRING_INTERN(image);
CSS_LWC_STRING_INTERN(img);
@@ -655,6 +660,13 @@ nserror corestrings_init(void)
goto error;
}
+ lerror = lwc_intern_string("shortcut icon", SLEN("shortcut icon"),
+ &corestring_lwc_shortcut_icon);
+ if ((lerror != lwc_error_ok) || (corestring_lwc_shortcut_icon == NULL)) {
+ error = NSERROR_NOMEM;
+ goto error;
+ }
+
lerror = lwc_intern_string("text/css", SLEN("text/css"),
&corestring_lwc_text_css);
if ((lerror != lwc_error_ok) || (corestring_lwc_text_css == NULL)) {
diff --git a/utils/corestrings.h b/utils/corestrings.h
index 555b916..78fcd15 100644
--- a/utils/corestrings.h
+++ b/utils/corestrings.h
@@ -67,6 +67,7 @@ extern lwc_string *corestring_lwc_hr;
extern lwc_string *corestring_lwc_html;
extern lwc_string *corestring_lwc_http;
extern lwc_string *corestring_lwc_https;
+extern lwc_string *corestring_lwc_icon;
extern lwc_string *corestring_lwc_iframe;
extern lwc_string *corestring_lwc_image;
extern lwc_string *corestring_lwc_img;
@@ -77,7 +78,7 @@ extern lwc_string *corestring_lwc_li;
extern lwc_string *corestring_lwc_link;
extern lwc_string *corestring_lwc_meta;
extern lwc_string *corestring_lwc_middle;
-extern lwc_string *corestring_lwc_multipart_form_data;
+extern lwc_string *corestring_lwc_multipart_form_data; /* multipart/form-data */
extern lwc_string *corestring_lwc_no;
extern lwc_string *corestring_lwc_noscript;
extern lwc_string *corestring_lwc_object;
@@ -98,6 +99,7 @@ extern lwc_string *corestring_lwc_resource;
extern lwc_string *corestring_lwc_right;
extern lwc_string *corestring_lwc_search;
extern lwc_string *corestring_lwc_select;
+extern lwc_string *corestring_lwc_shortcut_icon; /* shortcut icon */
extern lwc_string *corestring_lwc_src;
extern lwc_string *corestring_lwc_style;
extern lwc_string *corestring_lwc_submit;
@@ -107,7 +109,7 @@ 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_text_css;
+extern lwc_string *corestring_lwc_text_css; /* text/css */
extern lwc_string *corestring_lwc_tfoot;
extern lwc_string *corestring_lwc_th;
extern lwc_string *corestring_lwc_thead;
@@ -183,7 +185,7 @@ 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_http_equiv; /* http-equiv */
extern struct dom_string *corestring_dom_id;
extern struct dom_string *corestring_dom_input;
extern struct dom_string *corestring_dom_invalid;
@@ -244,7 +246,7 @@ extern struct dom_string *corestring_dom_submit;
extern struct dom_string *corestring_dom_suspend;
extern struct dom_string *corestring_dom_target;
extern struct dom_string *corestring_dom_text;
-extern struct dom_string *corestring_dom_text_javascript;
+extern struct dom_string *corestring_dom_text_javascript; /* text/javascript */
extern struct dom_string *corestring_dom_timeupdate;
extern struct dom_string *corestring_dom_title;
extern struct dom_string *corestring_dom_type;
-----------------------------------------------------------------------
Summary of changes:
desktop/browser.c | 54 ++++++++++++++------------------------------------
utils/corestrings.c | 12 +++++++++++
utils/corestrings.h | 10 +++++---
3 files changed, 33 insertions(+), 43 deletions(-)
diff --git a/desktop/browser.c b/desktop/browser.c
index d94a287..a33c1b6 100644
--- a/desktop/browser.c
+++ b/desktop/browser.c
@@ -967,7 +967,6 @@ static nserror browser_window_favicon_callback(hlcache_handle *c,
static void browser_window_update_favicon(hlcache_handle *c,
struct browser_window *bw, struct content_rfc5988_link *link)
{
- lwc_string *icon_str;
nsurl *nsref = NULL;
nsurl *nsurl;
nserror error;
@@ -986,20 +985,14 @@ static void browser_window_update_favicon(hlcache_handle *c,
bw->failed_favicon = false;
if (link == NULL) {
- /* look for favicon metadata link */
- if (lwc_intern_string("icon", SLEN("icon"),
- &icon_str) == lwc_error_ok) {
- link = content_find_rfc5988_link(c, icon_str);
- lwc_string_unref(icon_str);
- }
+ /* Look for "icon" */
+ link = content_find_rfc5988_link(c, corestring_lwc_icon);
}
if (link == NULL) {
- if (lwc_intern_string("shortcut icon", SLEN("shortcut icon"),
- &icon_str) == lwc_error_ok) {
- link = content_find_rfc5988_link(c, icon_str);
- lwc_string_unref(icon_str);
- }
+ /* Look for "shortcut icon" */
+ link = content_find_rfc5988_link(c,
+ corestring_lwc_shortcut_icon);
}
if (link == NULL) {
@@ -1404,34 +1397,17 @@ static nserror browser_window_callback(hlcache_handle *c,
case CONTENT_MSG_LINK: /* content has an rfc5988 link element */
{
- lwc_string *icon_str;
- lwc_string *shortcut_icon_str;
- bool icon_match = false;
- bool shortcut_icon_match = false;
-
- if (lwc_intern_string("icon", SLEN("icon"),
- &icon_str) == lwc_error_ok) {
- if (lwc_string_caseless_isequal(
- event->data.rfc5988_link->rel,
- icon_str,
- &icon_match) != lwc_error_ok) {
- icon_match = false;
- }
- lwc_string_unref(icon_str);
- }
-
- if (lwc_intern_string("shortcut icon", SLEN("shortcut icon"),
- &shortcut_icon_str) == lwc_error_ok) {
- if (lwc_string_caseless_isequal(
- event->data.rfc5988_link->rel,
- shortcut_icon_str,
- &shortcut_icon_match) != lwc_error_ok) {
- shortcut_icon_match = false;
- }
- lwc_string_unref(shortcut_icon_str);
- }
+ bool match;
- if (icon_match || shortcut_icon_match) {
+ /* Handle "icon" and "shortcut icon" */
+ if ((lwc_string_caseless_isequal(
+ event->data.rfc5988_link->rel,
+ corestring_lwc_icon,
+ &match) == lwc_error_ok && match) ||
+ (lwc_string_caseless_isequal(
+ event->data.rfc5988_link->rel,
+ corestring_lwc_shortcut_icon,
+ &match) == lwc_error_ok && match)) {
/* it's a favicon perhaps start a fetch for it */
browser_window_update_favicon(c, bw,
event->data.rfc5988_link);
diff --git a/utils/corestrings.c b/utils/corestrings.c
index 1a0c962..47279c3 100644
--- a/utils/corestrings.c
+++ b/utils/corestrings.c
@@ -63,6 +63,7 @@ lwc_string *corestring_lwc_hr;
lwc_string *corestring_lwc_html;
lwc_string *corestring_lwc_http;
lwc_string *corestring_lwc_https;
+lwc_string *corestring_lwc_icon;
lwc_string *corestring_lwc_iframe;
lwc_string *corestring_lwc_image;
lwc_string *corestring_lwc_img;
@@ -94,6 +95,7 @@ lwc_string *corestring_lwc_resource;
lwc_string *corestring_lwc_right;
lwc_string *corestring_lwc_search;
lwc_string *corestring_lwc_select;
+lwc_string *corestring_lwc_shortcut_icon;
lwc_string *corestring_lwc_src;
lwc_string *corestring_lwc_style;
lwc_string *corestring_lwc_submit;
@@ -315,6 +317,7 @@ void corestrings_fini(void)
CSS_LWC_STRING_UNREF(html);
CSS_LWC_STRING_UNREF(http);
CSS_LWC_STRING_UNREF(https);
+ CSS_LWC_STRING_UNREF(icon);
CSS_LWC_STRING_UNREF(iframe);
CSS_LWC_STRING_UNREF(image);
CSS_LWC_STRING_UNREF(img);
@@ -346,6 +349,7 @@ void corestrings_fini(void)
CSS_LWC_STRING_UNREF(right);
CSS_LWC_STRING_UNREF(search);
CSS_LWC_STRING_UNREF(select);
+ CSS_LWC_STRING_UNREF(shortcut_icon);
CSS_LWC_STRING_UNREF(src);
CSS_LWC_STRING_UNREF(style);
CSS_LWC_STRING_UNREF(submit);
@@ -591,6 +595,7 @@ nserror corestrings_init(void)
CSS_LWC_STRING_INTERN(html);
CSS_LWC_STRING_INTERN(http);
CSS_LWC_STRING_INTERN(https);
+ CSS_LWC_STRING_INTERN(icon);
CSS_LWC_STRING_INTERN(iframe);
CSS_LWC_STRING_INTERN(image);
CSS_LWC_STRING_INTERN(img);
@@ -655,6 +660,13 @@ nserror corestrings_init(void)
goto error;
}
+ lerror = lwc_intern_string("shortcut icon", SLEN("shortcut icon"),
+ &corestring_lwc_shortcut_icon);
+ if ((lerror != lwc_error_ok) || (corestring_lwc_shortcut_icon == NULL)) {
+ error = NSERROR_NOMEM;
+ goto error;
+ }
+
lerror = lwc_intern_string("text/css", SLEN("text/css"),
&corestring_lwc_text_css);
if ((lerror != lwc_error_ok) || (corestring_lwc_text_css == NULL)) {
diff --git a/utils/corestrings.h b/utils/corestrings.h
index 555b916..78fcd15 100644
--- a/utils/corestrings.h
+++ b/utils/corestrings.h
@@ -67,6 +67,7 @@ extern lwc_string *corestring_lwc_hr;
extern lwc_string *corestring_lwc_html;
extern lwc_string *corestring_lwc_http;
extern lwc_string *corestring_lwc_https;
+extern lwc_string *corestring_lwc_icon;
extern lwc_string *corestring_lwc_iframe;
extern lwc_string *corestring_lwc_image;
extern lwc_string *corestring_lwc_img;
@@ -77,7 +78,7 @@ extern lwc_string *corestring_lwc_li;
extern lwc_string *corestring_lwc_link;
extern lwc_string *corestring_lwc_meta;
extern lwc_string *corestring_lwc_middle;
-extern lwc_string *corestring_lwc_multipart_form_data;
+extern lwc_string *corestring_lwc_multipart_form_data; /* multipart/form-data */
extern lwc_string *corestring_lwc_no;
extern lwc_string *corestring_lwc_noscript;
extern lwc_string *corestring_lwc_object;
@@ -98,6 +99,7 @@ extern lwc_string *corestring_lwc_resource;
extern lwc_string *corestring_lwc_right;
extern lwc_string *corestring_lwc_search;
extern lwc_string *corestring_lwc_select;
+extern lwc_string *corestring_lwc_shortcut_icon; /* shortcut icon */
extern lwc_string *corestring_lwc_src;
extern lwc_string *corestring_lwc_style;
extern lwc_string *corestring_lwc_submit;
@@ -107,7 +109,7 @@ 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_text_css;
+extern lwc_string *corestring_lwc_text_css; /* text/css */
extern lwc_string *corestring_lwc_tfoot;
extern lwc_string *corestring_lwc_th;
extern lwc_string *corestring_lwc_thead;
@@ -183,7 +185,7 @@ 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_http_equiv; /* http-equiv */
extern struct dom_string *corestring_dom_id;
extern struct dom_string *corestring_dom_input;
extern struct dom_string *corestring_dom_invalid;
@@ -244,7 +246,7 @@ extern struct dom_string *corestring_dom_submit;
extern struct dom_string *corestring_dom_suspend;
extern struct dom_string *corestring_dom_target;
extern struct dom_string *corestring_dom_text;
-extern struct dom_string *corestring_dom_text_javascript;
+extern struct dom_string *corestring_dom_text_javascript; /* text/javascript */
extern struct dom_string *corestring_dom_timeupdate;
extern struct dom_string *corestring_dom_title;
extern struct dom_string *corestring_dom_type;
--
NetSurf Browser
9 years
netsurf: branch master updated. release/3.0-993-gdab6d79
by NetSurf Browser Project
Gitweb links:
...log http://git.netsurf-browser.org/netsurf.git/shortlog/dab6d7961ea6fb70aa602...
...commit http://git.netsurf-browser.org/netsurf.git/commit/dab6d7961ea6fb70aa6021e...
...tree http://git.netsurf-browser.org/netsurf.git/tree/dab6d7961ea6fb70aa6021e5d...
The branch, master has been updated
via dab6d7961ea6fb70aa6021e5dc7a189915b0c10c (commit)
from d64754aca433697a16ba9b1e56f2dc5de3fc0bd4 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commitdiff http://git.netsurf-browser.org/netsurf.git/commit/?id=dab6d7961ea6fb70aa6...
commit dab6d7961ea6fb70aa6021e5dc7a189915b0c10c
Author: Michael Drake <tlsa(a)netsurf-browser.org>
Commit: Michael Drake <tlsa(a)netsurf-browser.org>
Actually use the fact scheme is interned.
diff --git a/desktop/browser.c b/desktop/browser.c
index f66e275..d94a287 100644
--- a/desktop/browser.c
+++ b/desktop/browser.c
@@ -60,6 +60,7 @@
#include "render/form.h"
#include "render/html.h"
#include "render/box.h"
+#include "utils/corestrings.h"
#include "utils/log.h"
#include "utils/messages.h"
#include "utils/nsurl.h"
@@ -1004,6 +1005,7 @@ static void browser_window_update_favicon(hlcache_handle *c,
if (link == NULL) {
lwc_string *scheme;
bool speculative_default = false;
+ bool match;
nsurl = hlcache_handle_get_url(c);
@@ -1011,12 +1013,10 @@ static void browser_window_update_favicon(hlcache_handle *c,
/* If the document was fetched over http(s), then speculate
* that there's a favicon living at /favicon.ico */
- if ((lwc_string_length(scheme) == SLEN("HTTP") &&
- strcasecmp(lwc_string_data(scheme),
- "http") == 0) ||
- (lwc_string_length(scheme) == SLEN("HTTPS") &&
- strcasecmp(lwc_string_data(scheme),
- "https") == 0)) {
+ if ((lwc_string_caseless_isequal(scheme, corestring_lwc_http,
+ &match) == lwc_error_ok && match) ||
+ (lwc_string_caseless_isequal(scheme, corestring_lwc_https,
+ &match) == lwc_error_ok && match)) {
speculative_default = true;
}
-----------------------------------------------------------------------
Summary of changes:
desktop/browser.c | 12 ++++++------
1 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/desktop/browser.c b/desktop/browser.c
index f66e275..d94a287 100644
--- a/desktop/browser.c
+++ b/desktop/browser.c
@@ -60,6 +60,7 @@
#include "render/form.h"
#include "render/html.h"
#include "render/box.h"
+#include "utils/corestrings.h"
#include "utils/log.h"
#include "utils/messages.h"
#include "utils/nsurl.h"
@@ -1004,6 +1005,7 @@ static void browser_window_update_favicon(hlcache_handle *c,
if (link == NULL) {
lwc_string *scheme;
bool speculative_default = false;
+ bool match;
nsurl = hlcache_handle_get_url(c);
@@ -1011,12 +1013,10 @@ static void browser_window_update_favicon(hlcache_handle *c,
/* If the document was fetched over http(s), then speculate
* that there's a favicon living at /favicon.ico */
- if ((lwc_string_length(scheme) == SLEN("HTTP") &&
- strcasecmp(lwc_string_data(scheme),
- "http") == 0) ||
- (lwc_string_length(scheme) == SLEN("HTTPS") &&
- strcasecmp(lwc_string_data(scheme),
- "https") == 0)) {
+ if ((lwc_string_caseless_isequal(scheme, corestring_lwc_http,
+ &match) == lwc_error_ok && match) ||
+ (lwc_string_caseless_isequal(scheme, corestring_lwc_https,
+ &match) == lwc_error_ok && match)) {
speculative_default = true;
}
--
NetSurf Browser
9 years
netsurf: branch master updated. release/3.0-992-gd64754a
by NetSurf Browser Project
Gitweb links:
...log http://git.netsurf-browser.org/netsurf.git/shortlog/d64754aca433697a16ba9...
...commit http://git.netsurf-browser.org/netsurf.git/commit/d64754aca433697a16ba9b1...
...tree http://git.netsurf-browser.org/netsurf.git/tree/d64754aca433697a16ba9b1e5...
The branch, master has been updated
via d64754aca433697a16ba9b1e56f2dc5de3fc0bd4 (commit)
from 2075ad7ff43a103ea7712ede150ada8234e3780e (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commitdiff http://git.netsurf-browser.org/netsurf.git/commit/?id=d64754aca433697a16b...
commit d64754aca433697a16ba9b1e56f2dc5de3fc0bd4
Author: Chris Young <chris(a)unsatisfactorysoftware.co.uk>
Commit: Chris Young <chris(a)unsatisfactorysoftware.co.uk>
Ensure the screen actually gets closed before NetSurf quits.
diff --git a/amiga/gui.c b/amiga/gui.c
index 6bad1db..a9c72c9 100644
--- a/amiga/gui.c
+++ b/amiga/gui.c
@@ -2787,9 +2787,13 @@ void ami_gui_close_screen(struct Screen *scrn, BOOL locked_screen)
if(locked_screen == TRUE) return;
/* If this is our own screen, wait for visitor windows to close */
- LOG(("Waiting for visitor windows to close..."));
+ LOG(("Waiting for visitor windows to close... (signal)"));
Wait(scrnsig);
- CloseScreen(scrn);
+
+ while (CloseScreen(scrn) == FALSE) {
+ LOG(("Still waiting for visitor windows to close... (polling)"));
+ Delay(50);
+ }
}
static void gui_quit(void)
-----------------------------------------------------------------------
Summary of changes:
amiga/gui.c | 8 ++++++--
1 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/amiga/gui.c b/amiga/gui.c
index 6bad1db..a9c72c9 100644
--- a/amiga/gui.c
+++ b/amiga/gui.c
@@ -2787,9 +2787,13 @@ void ami_gui_close_screen(struct Screen *scrn, BOOL locked_screen)
if(locked_screen == TRUE) return;
/* If this is our own screen, wait for visitor windows to close */
- LOG(("Waiting for visitor windows to close..."));
+ LOG(("Waiting for visitor windows to close... (signal)"));
Wait(scrnsig);
- CloseScreen(scrn);
+
+ while (CloseScreen(scrn) == FALSE) {
+ LOG(("Still waiting for visitor windows to close... (polling)"));
+ Delay(50);
+ }
}
static void gui_quit(void)
--
NetSurf Browser
9 years
netsurf: branch master updated. release/3.0-991-g2075ad7
by NetSurf Browser Project
Gitweb links:
...log http://git.netsurf-browser.org/netsurf.git/shortlog/2075ad7ff43a103ea7712...
...commit http://git.netsurf-browser.org/netsurf.git/commit/2075ad7ff43a103ea7712ed...
...tree http://git.netsurf-browser.org/netsurf.git/tree/2075ad7ff43a103ea7712ede1...
The branch, master has been updated
via 2075ad7ff43a103ea7712ede150ada8234e3780e (commit)
via 0a6e5fcb6d07abb29aa87d758e873f14850e09f2 (commit)
from 14238615a43f3c0f57790ab4b54fd44204695179 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commitdiff http://git.netsurf-browser.org/netsurf.git/commit/?id=2075ad7ff43a103ea77...
commit 2075ad7ff43a103ea7712ede150ada8234e3780e
Author: Michael Drake <tlsa(a)netsurf-browser.org>
Commit: Michael Drake <tlsa(a)netsurf-browser.org>
Use corestrings.
diff --git a/content/llcache.c b/content/llcache.c
index f2e519f..e4baec6 100644
--- a/content/llcache.c
+++ b/content/llcache.c
@@ -29,6 +29,7 @@
#include "content/fetch.h"
#include "content/llcache.h"
#include "content/urldb.h"
+#include "utils/corestrings.h"
#include "utils/log.h"
#include "utils/messages.h"
#include "utils/nsurl.h"
@@ -162,11 +163,6 @@ struct llcache_s {
/** low level cache state */
static struct llcache_s *llcache = NULL;
-/* Static lwc_strings */
-static lwc_string *llcache_file_lwc;
-static lwc_string *llcache_about_lwc;
-static lwc_string *llcache_resource_lwc;
-
/* forward referenced callback function */
static void llcache_fetch_callback(const fetch_msg *msg, void *p);
@@ -1272,16 +1268,16 @@ static nserror llcache_fetch_redirect(llcache_object *object, const char *target
scheme = nsurl_get_component(url, NSURL_SCHEME);
/* resource: and about: are allowed to redirect anywhere */
- if ((lwc_string_isequal(object_scheme, llcache_resource_lwc,
+ if ((lwc_string_isequal(object_scheme, corestring_lwc_resource,
&match) == lwc_error_ok && match == false) &&
- (lwc_string_isequal(object_scheme, llcache_about_lwc,
+ (lwc_string_isequal(object_scheme, corestring_lwc_about,
&match) == lwc_error_ok && match == false)) {
/* file, about and resource are not valid redirect targets */
- if ((lwc_string_isequal(object_scheme, llcache_file_lwc,
+ if ((lwc_string_isequal(object_scheme, corestring_lwc_file,
&match) == lwc_error_ok && match == true) ||
- (lwc_string_isequal(object_scheme, llcache_about_lwc,
+ (lwc_string_isequal(object_scheme, corestring_lwc_about,
&match) == lwc_error_ok && match == true) ||
- (lwc_string_isequal(object_scheme, llcache_resource_lwc,
+ (lwc_string_isequal(object_scheme, corestring_lwc_resource,
&match) == lwc_error_ok && match == true)) {
lwc_string_unref(object_scheme);
lwc_string_unref(scheme);
@@ -2287,19 +2283,6 @@ llcache_initialise(llcache_query_callback cb, void *pw, uint32_t llcache_limit)
llcache->query_cb_pw = pw;
llcache->limit = llcache_limit;
- /* Create static scheme strings */
- if (lwc_intern_string("file", SLEN("file"),
- &llcache_file_lwc) != lwc_error_ok)
- return NSERROR_NOMEM;
-
- if (lwc_intern_string("about", SLEN("about"),
- &llcache_about_lwc) != lwc_error_ok)
- return NSERROR_NOMEM;
-
- if (lwc_intern_string("resource", SLEN("resource"),
- &llcache_resource_lwc) != lwc_error_ok)
- return NSERROR_NOMEM;
-
LOG(("llcache initialised with a limit of %d bytes", llcache_limit));
return NSERROR_OK;
@@ -2352,11 +2335,6 @@ void llcache_finalise(void)
llcache_object_destroy(object);
}
- /* Unref static scheme lwc strings */
- lwc_string_unref(llcache_file_lwc);
- lwc_string_unref(llcache_about_lwc);
- lwc_string_unref(llcache_resource_lwc);
-
free(llcache);
llcache = NULL;
}
commitdiff http://git.netsurf-browser.org/netsurf.git/commit/?id=0a6e5fcb6d07abb29aa...
commit 0a6e5fcb6d07abb29aa87d758e873f14850e09f2
Author: Michael Drake <tlsa(a)netsurf-browser.org>
Commit: Michael Drake <tlsa(a)netsurf-browser.org>
Use corestring.
diff --git a/css/css.c b/css/css.c
index 3645118..2b4f60a 100644
--- a/css/css.c
+++ b/css/css.c
@@ -28,6 +28,7 @@
#include "css/internal.h"
#include "desktop/system_colour.h"
#include "render/html.h"
+#include "utils/corestrings.h"
#include "utils/utils.h"
#include "utils/http.h"
#include "utils/log.h"
@@ -111,7 +112,6 @@ static css_error nscss_register_import(struct content_css_data *c,
const hlcache_handle *import);
-static lwc_string *css_charset;
static css_stylesheet *blank_import;
@@ -146,7 +146,7 @@ nserror nscss_create(const content_handler *handler,
}
/* Find charset specified on HTTP layer, if any */
- error = http_parameter_list_find_item(params, css_charset,
+ error = http_parameter_list_find_item(params, corestring_lwc_charset,
&charset_value);
if (error != NSERROR_OK || lwc_string_length(charset_value) == 0) {
/* No charset specified, use fallback, if any */
@@ -800,11 +800,6 @@ css_error nscss_register_import(struct content_css_data *c,
*/
static void nscss_fini(void)
{
- if (css_charset != NULL) {
- lwc_string_unref(css_charset);
- css_charset = NULL;
- }
-
if (blank_import != NULL) {
css_stylesheet_destroy(blank_import);
blank_import = NULL;
@@ -828,15 +823,8 @@ static const content_handler css_content_handler = {
*/
nserror nscss_init(void)
{
- lwc_error lerror;
nserror error;
- lerror = lwc_intern_string("charset", SLEN("charset"), &css_charset);
- if (lerror != lwc_error_ok) {
- error = NSERROR_NOMEM;
- goto error;
- }
-
error = content_factory_register_handler("text/css",
&css_content_handler);
if (error != NSERROR_OK)
-----------------------------------------------------------------------
Summary of changes:
content/llcache.c | 34 ++++++----------------------------
css/css.c | 16 ++--------------
2 files changed, 8 insertions(+), 42 deletions(-)
diff --git a/content/llcache.c b/content/llcache.c
index f2e519f..e4baec6 100644
--- a/content/llcache.c
+++ b/content/llcache.c
@@ -29,6 +29,7 @@
#include "content/fetch.h"
#include "content/llcache.h"
#include "content/urldb.h"
+#include "utils/corestrings.h"
#include "utils/log.h"
#include "utils/messages.h"
#include "utils/nsurl.h"
@@ -162,11 +163,6 @@ struct llcache_s {
/** low level cache state */
static struct llcache_s *llcache = NULL;
-/* Static lwc_strings */
-static lwc_string *llcache_file_lwc;
-static lwc_string *llcache_about_lwc;
-static lwc_string *llcache_resource_lwc;
-
/* forward referenced callback function */
static void llcache_fetch_callback(const fetch_msg *msg, void *p);
@@ -1272,16 +1268,16 @@ static nserror llcache_fetch_redirect(llcache_object *object, const char *target
scheme = nsurl_get_component(url, NSURL_SCHEME);
/* resource: and about: are allowed to redirect anywhere */
- if ((lwc_string_isequal(object_scheme, llcache_resource_lwc,
+ if ((lwc_string_isequal(object_scheme, corestring_lwc_resource,
&match) == lwc_error_ok && match == false) &&
- (lwc_string_isequal(object_scheme, llcache_about_lwc,
+ (lwc_string_isequal(object_scheme, corestring_lwc_about,
&match) == lwc_error_ok && match == false)) {
/* file, about and resource are not valid redirect targets */
- if ((lwc_string_isequal(object_scheme, llcache_file_lwc,
+ if ((lwc_string_isequal(object_scheme, corestring_lwc_file,
&match) == lwc_error_ok && match == true) ||
- (lwc_string_isequal(object_scheme, llcache_about_lwc,
+ (lwc_string_isequal(object_scheme, corestring_lwc_about,
&match) == lwc_error_ok && match == true) ||
- (lwc_string_isequal(object_scheme, llcache_resource_lwc,
+ (lwc_string_isequal(object_scheme, corestring_lwc_resource,
&match) == lwc_error_ok && match == true)) {
lwc_string_unref(object_scheme);
lwc_string_unref(scheme);
@@ -2287,19 +2283,6 @@ llcache_initialise(llcache_query_callback cb, void *pw, uint32_t llcache_limit)
llcache->query_cb_pw = pw;
llcache->limit = llcache_limit;
- /* Create static scheme strings */
- if (lwc_intern_string("file", SLEN("file"),
- &llcache_file_lwc) != lwc_error_ok)
- return NSERROR_NOMEM;
-
- if (lwc_intern_string("about", SLEN("about"),
- &llcache_about_lwc) != lwc_error_ok)
- return NSERROR_NOMEM;
-
- if (lwc_intern_string("resource", SLEN("resource"),
- &llcache_resource_lwc) != lwc_error_ok)
- return NSERROR_NOMEM;
-
LOG(("llcache initialised with a limit of %d bytes", llcache_limit));
return NSERROR_OK;
@@ -2352,11 +2335,6 @@ void llcache_finalise(void)
llcache_object_destroy(object);
}
- /* Unref static scheme lwc strings */
- lwc_string_unref(llcache_file_lwc);
- lwc_string_unref(llcache_about_lwc);
- lwc_string_unref(llcache_resource_lwc);
-
free(llcache);
llcache = NULL;
}
diff --git a/css/css.c b/css/css.c
index 3645118..2b4f60a 100644
--- a/css/css.c
+++ b/css/css.c
@@ -28,6 +28,7 @@
#include "css/internal.h"
#include "desktop/system_colour.h"
#include "render/html.h"
+#include "utils/corestrings.h"
#include "utils/utils.h"
#include "utils/http.h"
#include "utils/log.h"
@@ -111,7 +112,6 @@ static css_error nscss_register_import(struct content_css_data *c,
const hlcache_handle *import);
-static lwc_string *css_charset;
static css_stylesheet *blank_import;
@@ -146,7 +146,7 @@ nserror nscss_create(const content_handler *handler,
}
/* Find charset specified on HTTP layer, if any */
- error = http_parameter_list_find_item(params, css_charset,
+ error = http_parameter_list_find_item(params, corestring_lwc_charset,
&charset_value);
if (error != NSERROR_OK || lwc_string_length(charset_value) == 0) {
/* No charset specified, use fallback, if any */
@@ -800,11 +800,6 @@ css_error nscss_register_import(struct content_css_data *c,
*/
static void nscss_fini(void)
{
- if (css_charset != NULL) {
- lwc_string_unref(css_charset);
- css_charset = NULL;
- }
-
if (blank_import != NULL) {
css_stylesheet_destroy(blank_import);
blank_import = NULL;
@@ -828,15 +823,8 @@ static const content_handler css_content_handler = {
*/
nserror nscss_init(void)
{
- lwc_error lerror;
nserror error;
- lerror = lwc_intern_string("charset", SLEN("charset"), &css_charset);
- if (lerror != lwc_error_ok) {
- error = NSERROR_NOMEM;
- goto error;
- }
-
error = content_factory_register_handler("text/css",
&css_content_handler);
if (error != NSERROR_OK)
--
NetSurf Browser
9 years
netsurf: branch master updated. release/3.0-989-g1423861
by NetSurf Browser Project
Gitweb links:
...log http://git.netsurf-browser.org/netsurf.git/shortlog/14238615a43f3c0f57790...
...commit http://git.netsurf-browser.org/netsurf.git/commit/14238615a43f3c0f57790ab...
...tree http://git.netsurf-browser.org/netsurf.git/tree/14238615a43f3c0f57790ab4b...
The branch, master has been updated
via 14238615a43f3c0f57790ab4b54fd44204695179 (commit)
via e32dc31b04b8db0c27ef666e85a0cd058302fb15 (commit)
from 178f3945b8502d5fd483e0d0814d169b4b9bad2f (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commitdiff http://git.netsurf-browser.org/netsurf.git/commit/?id=14238615a43f3c0f577...
commit 14238615a43f3c0f57790ab4b54fd44204695179
Author: Michael Drake <tlsa(a)netsurf-browser.org>
Commit: Michael Drake <tlsa(a)netsurf-browser.org>
Use corestrings for "about", "data", and "resource".
diff --git a/content/fetchers/about.c b/content/fetchers/about.c
index cac8b2b..8e973a9 100644
--- a/content/fetchers/about.c
+++ b/content/fetchers/about.c
@@ -48,6 +48,7 @@
#include "content/urldb.h"
#include "desktop/netsurf.h"
#include "utils/nsoption.h"
+#include "utils/corestrings.h"
#include "utils/log.h"
#include "utils/messages.h"
#include "utils/url.h"
@@ -839,13 +840,7 @@ static void fetch_about_poll(lwc_string *scheme)
void fetch_about_register(void)
{
- lwc_string *scheme;
-
- if (lwc_intern_string("about", SLEN("about"),
- &scheme) != lwc_error_ok) {
- die("Failed to initialise the fetch module "
- "(couldn't intern \"about\").");
- }
+ lwc_string *scheme = lwc_string_ref(corestring_lwc_about);
fetch_add_fetcher(scheme,
fetch_about_initialise,
diff --git a/content/fetchers/data.c b/content/fetchers/data.c
index fbaa247..e192812 100644
--- a/content/fetchers/data.c
+++ b/content/fetchers/data.c
@@ -34,6 +34,7 @@
#include "content/fetchers/data.h"
#include "content/urldb.h"
#include "desktop/netsurf.h"
+#include "utils/corestrings.h"
#include "utils/nsoption.h"
#include "utils/log.h"
#include "utils/messages.h"
@@ -326,12 +327,7 @@ static void fetch_data_poll(lwc_string *scheme)
void fetch_data_register(void)
{
- lwc_string *scheme;
-
- if (lwc_intern_string("data", SLEN("data"), &scheme) != lwc_error_ok) {
- die("Failed to initialise the fetch module "
- "(couldn't intern \"data\").");
- }
+ lwc_string *scheme = lwc_string_ref(corestring_lwc_data);
fetch_add_fetcher(scheme,
fetch_data_initialise,
diff --git a/content/fetchers/resource.c b/content/fetchers/resource.c
index cce816a..b2791b4 100644
--- a/content/fetchers/resource.c
+++ b/content/fetchers/resource.c
@@ -43,6 +43,7 @@
#include "content/urldb.h"
#include "desktop/gui.h"
#include "desktop/gui_factory.h"
+#include "utils/corestrings.h"
#include "utils/nsoption.h"
#include "utils/log.h"
#include "utils/messages.h"
@@ -356,13 +357,7 @@ static void fetch_resource_poll(lwc_string *scheme)
void fetch_resource_register(void)
{
- lwc_string *scheme;
-
- if (lwc_intern_string("resource", SLEN("resource"),
- &scheme) != lwc_error_ok) {
- die("Failed to initialise the fetch module "
- "(couldn't intern \"resource\").");
- }
+ lwc_string *scheme = lwc_string_ref(corestring_lwc_resource);
fetch_add_fetcher(scheme,
fetch_resource_initialise,
diff --git a/utils/corestrings.c b/utils/corestrings.c
index ebe7c99..1a0c962 100644
--- a/utils/corestrings.c
+++ b/utils/corestrings.c
@@ -27,6 +27,7 @@
/* lwc_string strings */
lwc_string *corestring_lwc_a;
+lwc_string *corestring_lwc_about;
lwc_string *corestring_lwc_abscenter;
lwc_string *corestring_lwc_absmiddle;
lwc_string *corestring_lwc_align;
@@ -42,6 +43,7 @@ lwc_string *corestring_lwc_charset;
lwc_string *corestring_lwc_checkbox;
lwc_string *corestring_lwc_circle;
lwc_string *corestring_lwc_col;
+lwc_string *corestring_lwc_data;
lwc_string *corestring_lwc_default;
lwc_string *corestring_lwc_div;
lwc_string *corestring_lwc_embed;
@@ -88,6 +90,7 @@ lwc_string *corestring_lwc_rect;
lwc_string *corestring_lwc_rectangle;
lwc_string *corestring_lwc_refresh;
lwc_string *corestring_lwc_reset;
+lwc_string *corestring_lwc_resource;
lwc_string *corestring_lwc_right;
lwc_string *corestring_lwc_search;
lwc_string *corestring_lwc_select;
@@ -276,6 +279,7 @@ void corestrings_fini(void)
} while (0)
CSS_LWC_STRING_UNREF(a);
+ CSS_LWC_STRING_UNREF(about);
CSS_LWC_STRING_UNREF(abscenter);
CSS_LWC_STRING_UNREF(absmiddle);
CSS_LWC_STRING_UNREF(align);
@@ -291,6 +295,7 @@ void corestrings_fini(void)
CSS_LWC_STRING_UNREF(checkbox);
CSS_LWC_STRING_UNREF(circle);
CSS_LWC_STRING_UNREF(col);
+ CSS_LWC_STRING_UNREF(data);
CSS_LWC_STRING_UNREF(default);
CSS_LWC_STRING_UNREF(div);
CSS_LWC_STRING_UNREF(embed);
@@ -337,6 +342,7 @@ void corestrings_fini(void)
CSS_LWC_STRING_UNREF(rectangle);
CSS_LWC_STRING_UNREF(refresh);
CSS_LWC_STRING_UNREF(reset);
+ CSS_LWC_STRING_UNREF(resource);
CSS_LWC_STRING_UNREF(right);
CSS_LWC_STRING_UNREF(search);
CSS_LWC_STRING_UNREF(select);
@@ -549,6 +555,7 @@ nserror corestrings_init(void)
} while(0)
CSS_LWC_STRING_INTERN(a);
+ CSS_LWC_STRING_INTERN(about);
CSS_LWC_STRING_INTERN(abscenter);
CSS_LWC_STRING_INTERN(absmiddle);
CSS_LWC_STRING_INTERN(align);
@@ -564,6 +571,7 @@ nserror corestrings_init(void)
CSS_LWC_STRING_INTERN(checkbox);
CSS_LWC_STRING_INTERN(circle);
CSS_LWC_STRING_INTERN(col);
+ CSS_LWC_STRING_INTERN(data);
CSS_LWC_STRING_INTERN(default);
CSS_LWC_STRING_INTERN(div);
CSS_LWC_STRING_INTERN(embed);
@@ -609,6 +617,7 @@ nserror corestrings_init(void)
CSS_LWC_STRING_INTERN(rectangle);
CSS_LWC_STRING_INTERN(refresh);
CSS_LWC_STRING_INTERN(reset);
+ CSS_LWC_STRING_INTERN(resource);
CSS_LWC_STRING_INTERN(right);
CSS_LWC_STRING_INTERN(search);
CSS_LWC_STRING_INTERN(select);
diff --git a/utils/corestrings.h b/utils/corestrings.h
index 5c3349f..555b916 100644
--- a/utils/corestrings.h
+++ b/utils/corestrings.h
@@ -31,6 +31,7 @@ void corestrings_fini(void);
/* lwc_string strings */
extern lwc_string *corestring_lwc_a;
+extern lwc_string *corestring_lwc_about;
extern lwc_string *corestring_lwc_abscenter;
extern lwc_string *corestring_lwc_absmiddle;
extern lwc_string *corestring_lwc_align;
@@ -46,6 +47,7 @@ extern lwc_string *corestring_lwc_charset;
extern lwc_string *corestring_lwc_checkbox;
extern lwc_string *corestring_lwc_circle;
extern lwc_string *corestring_lwc_col;
+extern lwc_string *corestring_lwc_data;
extern lwc_string *corestring_lwc_default;
extern lwc_string *corestring_lwc_div;
extern lwc_string *corestring_lwc_embed;
@@ -92,6 +94,7 @@ extern lwc_string *corestring_lwc_rect;
extern lwc_string *corestring_lwc_rectangle;
extern lwc_string *corestring_lwc_refresh;
extern lwc_string *corestring_lwc_reset;
+extern lwc_string *corestring_lwc_resource;
extern lwc_string *corestring_lwc_right;
extern lwc_string *corestring_lwc_search;
extern lwc_string *corestring_lwc_select;
commitdiff http://git.netsurf-browser.org/netsurf.git/commit/?id=e32dc31b04b8db0c27e...
commit e32dc31b04b8db0c27ef666e85a0cd058302fb15
Author: Michael Drake <tlsa(a)netsurf-browser.org>
Commit: Michael Drake <tlsa(a)netsurf-browser.org>
Use corestring ref.
diff --git a/content/fetchers/file.c b/content/fetchers/file.c
index 83c408e..7b93ab1 100644
--- a/content/fetchers/file.c
+++ b/content/fetchers/file.c
@@ -48,6 +48,7 @@
#include "content/urldb.h"
#include "desktop/netsurf.h"
#include "desktop/gui_factory.h"
+#include "utils/corestrings.h"
#include "utils/nsoption.h"
#include "utils/errors.h"
#include "utils/log.h"
@@ -734,12 +735,7 @@ static void fetch_file_poll(lwc_string *scheme)
void fetch_file_register(void)
{
- lwc_string *scheme;
-
- if (lwc_intern_string("file", SLEN("file"), &scheme) != lwc_error_ok) {
- die("Failed to initialise the fetch module "
- "(couldn't intern \"file\").");
- }
+ lwc_string *scheme = lwc_string_ref(corestring_lwc_file);
fetch_add_fetcher(scheme,
fetch_file_initialise,
-----------------------------------------------------------------------
Summary of changes:
content/fetchers/about.c | 9 ++-------
content/fetchers/data.c | 8 ++------
content/fetchers/file.c | 8 ++------
content/fetchers/resource.c | 9 ++-------
utils/corestrings.c | 9 +++++++++
utils/corestrings.h | 3 +++
6 files changed, 20 insertions(+), 26 deletions(-)
diff --git a/content/fetchers/about.c b/content/fetchers/about.c
index cac8b2b..8e973a9 100644
--- a/content/fetchers/about.c
+++ b/content/fetchers/about.c
@@ -48,6 +48,7 @@
#include "content/urldb.h"
#include "desktop/netsurf.h"
#include "utils/nsoption.h"
+#include "utils/corestrings.h"
#include "utils/log.h"
#include "utils/messages.h"
#include "utils/url.h"
@@ -839,13 +840,7 @@ static void fetch_about_poll(lwc_string *scheme)
void fetch_about_register(void)
{
- lwc_string *scheme;
-
- if (lwc_intern_string("about", SLEN("about"),
- &scheme) != lwc_error_ok) {
- die("Failed to initialise the fetch module "
- "(couldn't intern \"about\").");
- }
+ lwc_string *scheme = lwc_string_ref(corestring_lwc_about);
fetch_add_fetcher(scheme,
fetch_about_initialise,
diff --git a/content/fetchers/data.c b/content/fetchers/data.c
index fbaa247..e192812 100644
--- a/content/fetchers/data.c
+++ b/content/fetchers/data.c
@@ -34,6 +34,7 @@
#include "content/fetchers/data.h"
#include "content/urldb.h"
#include "desktop/netsurf.h"
+#include "utils/corestrings.h"
#include "utils/nsoption.h"
#include "utils/log.h"
#include "utils/messages.h"
@@ -326,12 +327,7 @@ static void fetch_data_poll(lwc_string *scheme)
void fetch_data_register(void)
{
- lwc_string *scheme;
-
- if (lwc_intern_string("data", SLEN("data"), &scheme) != lwc_error_ok) {
- die("Failed to initialise the fetch module "
- "(couldn't intern \"data\").");
- }
+ lwc_string *scheme = lwc_string_ref(corestring_lwc_data);
fetch_add_fetcher(scheme,
fetch_data_initialise,
diff --git a/content/fetchers/file.c b/content/fetchers/file.c
index 83c408e..7b93ab1 100644
--- a/content/fetchers/file.c
+++ b/content/fetchers/file.c
@@ -48,6 +48,7 @@
#include "content/urldb.h"
#include "desktop/netsurf.h"
#include "desktop/gui_factory.h"
+#include "utils/corestrings.h"
#include "utils/nsoption.h"
#include "utils/errors.h"
#include "utils/log.h"
@@ -734,12 +735,7 @@ static void fetch_file_poll(lwc_string *scheme)
void fetch_file_register(void)
{
- lwc_string *scheme;
-
- if (lwc_intern_string("file", SLEN("file"), &scheme) != lwc_error_ok) {
- die("Failed to initialise the fetch module "
- "(couldn't intern \"file\").");
- }
+ lwc_string *scheme = lwc_string_ref(corestring_lwc_file);
fetch_add_fetcher(scheme,
fetch_file_initialise,
diff --git a/content/fetchers/resource.c b/content/fetchers/resource.c
index cce816a..b2791b4 100644
--- a/content/fetchers/resource.c
+++ b/content/fetchers/resource.c
@@ -43,6 +43,7 @@
#include "content/urldb.h"
#include "desktop/gui.h"
#include "desktop/gui_factory.h"
+#include "utils/corestrings.h"
#include "utils/nsoption.h"
#include "utils/log.h"
#include "utils/messages.h"
@@ -356,13 +357,7 @@ static void fetch_resource_poll(lwc_string *scheme)
void fetch_resource_register(void)
{
- lwc_string *scheme;
-
- if (lwc_intern_string("resource", SLEN("resource"),
- &scheme) != lwc_error_ok) {
- die("Failed to initialise the fetch module "
- "(couldn't intern \"resource\").");
- }
+ lwc_string *scheme = lwc_string_ref(corestring_lwc_resource);
fetch_add_fetcher(scheme,
fetch_resource_initialise,
diff --git a/utils/corestrings.c b/utils/corestrings.c
index ebe7c99..1a0c962 100644
--- a/utils/corestrings.c
+++ b/utils/corestrings.c
@@ -27,6 +27,7 @@
/* lwc_string strings */
lwc_string *corestring_lwc_a;
+lwc_string *corestring_lwc_about;
lwc_string *corestring_lwc_abscenter;
lwc_string *corestring_lwc_absmiddle;
lwc_string *corestring_lwc_align;
@@ -42,6 +43,7 @@ lwc_string *corestring_lwc_charset;
lwc_string *corestring_lwc_checkbox;
lwc_string *corestring_lwc_circle;
lwc_string *corestring_lwc_col;
+lwc_string *corestring_lwc_data;
lwc_string *corestring_lwc_default;
lwc_string *corestring_lwc_div;
lwc_string *corestring_lwc_embed;
@@ -88,6 +90,7 @@ lwc_string *corestring_lwc_rect;
lwc_string *corestring_lwc_rectangle;
lwc_string *corestring_lwc_refresh;
lwc_string *corestring_lwc_reset;
+lwc_string *corestring_lwc_resource;
lwc_string *corestring_lwc_right;
lwc_string *corestring_lwc_search;
lwc_string *corestring_lwc_select;
@@ -276,6 +279,7 @@ void corestrings_fini(void)
} while (0)
CSS_LWC_STRING_UNREF(a);
+ CSS_LWC_STRING_UNREF(about);
CSS_LWC_STRING_UNREF(abscenter);
CSS_LWC_STRING_UNREF(absmiddle);
CSS_LWC_STRING_UNREF(align);
@@ -291,6 +295,7 @@ void corestrings_fini(void)
CSS_LWC_STRING_UNREF(checkbox);
CSS_LWC_STRING_UNREF(circle);
CSS_LWC_STRING_UNREF(col);
+ CSS_LWC_STRING_UNREF(data);
CSS_LWC_STRING_UNREF(default);
CSS_LWC_STRING_UNREF(div);
CSS_LWC_STRING_UNREF(embed);
@@ -337,6 +342,7 @@ void corestrings_fini(void)
CSS_LWC_STRING_UNREF(rectangle);
CSS_LWC_STRING_UNREF(refresh);
CSS_LWC_STRING_UNREF(reset);
+ CSS_LWC_STRING_UNREF(resource);
CSS_LWC_STRING_UNREF(right);
CSS_LWC_STRING_UNREF(search);
CSS_LWC_STRING_UNREF(select);
@@ -549,6 +555,7 @@ nserror corestrings_init(void)
} while(0)
CSS_LWC_STRING_INTERN(a);
+ CSS_LWC_STRING_INTERN(about);
CSS_LWC_STRING_INTERN(abscenter);
CSS_LWC_STRING_INTERN(absmiddle);
CSS_LWC_STRING_INTERN(align);
@@ -564,6 +571,7 @@ nserror corestrings_init(void)
CSS_LWC_STRING_INTERN(checkbox);
CSS_LWC_STRING_INTERN(circle);
CSS_LWC_STRING_INTERN(col);
+ CSS_LWC_STRING_INTERN(data);
CSS_LWC_STRING_INTERN(default);
CSS_LWC_STRING_INTERN(div);
CSS_LWC_STRING_INTERN(embed);
@@ -609,6 +617,7 @@ nserror corestrings_init(void)
CSS_LWC_STRING_INTERN(rectangle);
CSS_LWC_STRING_INTERN(refresh);
CSS_LWC_STRING_INTERN(reset);
+ CSS_LWC_STRING_INTERN(resource);
CSS_LWC_STRING_INTERN(right);
CSS_LWC_STRING_INTERN(search);
CSS_LWC_STRING_INTERN(select);
diff --git a/utils/corestrings.h b/utils/corestrings.h
index 5c3349f..555b916 100644
--- a/utils/corestrings.h
+++ b/utils/corestrings.h
@@ -31,6 +31,7 @@ void corestrings_fini(void);
/* lwc_string strings */
extern lwc_string *corestring_lwc_a;
+extern lwc_string *corestring_lwc_about;
extern lwc_string *corestring_lwc_abscenter;
extern lwc_string *corestring_lwc_absmiddle;
extern lwc_string *corestring_lwc_align;
@@ -46,6 +47,7 @@ extern lwc_string *corestring_lwc_charset;
extern lwc_string *corestring_lwc_checkbox;
extern lwc_string *corestring_lwc_circle;
extern lwc_string *corestring_lwc_col;
+extern lwc_string *corestring_lwc_data;
extern lwc_string *corestring_lwc_default;
extern lwc_string *corestring_lwc_div;
extern lwc_string *corestring_lwc_embed;
@@ -92,6 +94,7 @@ extern lwc_string *corestring_lwc_rect;
extern lwc_string *corestring_lwc_rectangle;
extern lwc_string *corestring_lwc_refresh;
extern lwc_string *corestring_lwc_reset;
+extern lwc_string *corestring_lwc_resource;
extern lwc_string *corestring_lwc_right;
extern lwc_string *corestring_lwc_search;
extern lwc_string *corestring_lwc_select;
--
NetSurf Browser
9 years
netsurf: branch master updated. release/3.0-987-g178f394
by NetSurf Browser Project
Gitweb links:
...log http://git.netsurf-browser.org/netsurf.git/shortlog/178f3945b8502d5fd483e...
...commit http://git.netsurf-browser.org/netsurf.git/commit/178f3945b8502d5fd483e0d...
...tree http://git.netsurf-browser.org/netsurf.git/tree/178f3945b8502d5fd483e0d08...
The branch, master has been updated
via 178f3945b8502d5fd483e0d0814d169b4b9bad2f (commit)
from c4e2fff5a4670fd555c56a2b2ed232f210aaa2d5 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commitdiff http://git.netsurf-browser.org/netsurf.git/commit/?id=178f3945b8502d5fd48...
commit 178f3945b8502d5fd483e0d0814d169b4b9bad2f
Author: Michael Drake <tlsa(a)netsurf-browser.org>
Commit: Michael Drake <tlsa(a)netsurf-browser.org>
Just use corestring refs.
diff --git a/content/fetchers/curl.c b/content/fetchers/curl.c
index f3a8385..90c9c13 100644
--- a/content/fetchers/curl.c
+++ b/content/fetchers/curl.c
@@ -46,6 +46,7 @@
#include "content/urldb.h"
#include "desktop/netsurf.h"
#include "desktop/gui_factory.h"
+#include "utils/corestrings.h"
#include "utils/nsoption.h"
#include "utils/log.h"
#include "utils/messages.h"
@@ -236,18 +237,10 @@ void fetch_curl_register(void)
for (i = 0; data->protocols[i]; i++) {
if (strcmp(data->protocols[i], "http") == 0) {
- if (lwc_intern_string("http", SLEN("http"),
- &scheme) != lwc_error_ok) {
- die("Failed to initialise the fetch module "
- "(couldn't intern \"http\").");
- }
+ scheme = lwc_string_ref(corestring_lwc_http);
} else if (strcmp(data->protocols[i], "https") == 0) {
- if (lwc_intern_string("https", SLEN("https"),
- &scheme) != lwc_error_ok) {
- die("Failed to initialise the fetch module "
- "(couldn't intern \"https\").");
- }
+ scheme = lwc_string_ref(corestring_lwc_https);
} else {
/* Ignore non-http(s) protocols */
-----------------------------------------------------------------------
Summary of changes:
content/fetchers/curl.c | 13 +++----------
1 files changed, 3 insertions(+), 10 deletions(-)
diff --git a/content/fetchers/curl.c b/content/fetchers/curl.c
index f3a8385..90c9c13 100644
--- a/content/fetchers/curl.c
+++ b/content/fetchers/curl.c
@@ -46,6 +46,7 @@
#include "content/urldb.h"
#include "desktop/netsurf.h"
#include "desktop/gui_factory.h"
+#include "utils/corestrings.h"
#include "utils/nsoption.h"
#include "utils/log.h"
#include "utils/messages.h"
@@ -236,18 +237,10 @@ void fetch_curl_register(void)
for (i = 0; data->protocols[i]; i++) {
if (strcmp(data->protocols[i], "http") == 0) {
- if (lwc_intern_string("http", SLEN("http"),
- &scheme) != lwc_error_ok) {
- die("Failed to initialise the fetch module "
- "(couldn't intern \"http\").");
- }
+ scheme = lwc_string_ref(corestring_lwc_http);
} else if (strcmp(data->protocols[i], "https") == 0) {
- if (lwc_intern_string("https", SLEN("https"),
- &scheme) != lwc_error_ok) {
- die("Failed to initialise the fetch module "
- "(couldn't intern \"https\").");
- }
+ scheme = lwc_string_ref(corestring_lwc_https);
} else {
/* Ignore non-http(s) protocols */
--
NetSurf Browser
9 years
netsurf: branch master updated. release/3.0-986-gc4e2fff
by NetSurf Browser Project
Gitweb links:
...log http://git.netsurf-browser.org/netsurf.git/shortlog/c4e2fff5a4670fd555c56...
...commit http://git.netsurf-browser.org/netsurf.git/commit/c4e2fff5a4670fd555c56a2...
...tree http://git.netsurf-browser.org/netsurf.git/tree/c4e2fff5a4670fd555c56a2b2...
The branch, master has been updated
via c4e2fff5a4670fd555c56a2b2ed232f210aaa2d5 (commit)
from 72510f550bf42cf660faf1a1929cb6df59bf86fd (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commitdiff http://git.netsurf-browser.org/netsurf.git/commit/?id=c4e2fff5a4670fd555c...
commit c4e2fff5a4670fd555c56a2b2ed232f210aaa2d5
Author: Michael Drake <tlsa(a)netsurf-browser.org>
Commit: Michael Drake <tlsa(a)netsurf-browser.org>
Use corestrings for fetch module's lwc strings.
diff --git a/content/fetch.c b/content/fetch.c
index 2d53b31..4736670 100644
--- a/content/fetch.c
+++ b/content/fetch.c
@@ -45,6 +45,7 @@
#include "content/fetchers/file.h"
#include "content/urldb.h"
#include "desktop/netsurf.h"
+#include "utils/corestrings.h"
#include "utils/nsoption.h"
#include "utils/log.h"
#include "utils/messages.h"
@@ -97,10 +98,6 @@ static struct fetch *queue_ring = 0; /**< Ring of queued fetches */
#define fetch_ref_fetcher(F) F->refcount++
-/* Static lwc_strings */
-static lwc_string *fetch_http_lwc;
-static lwc_string *fetch_https_lwc;
-
/******************************************************************************
* fetch internals *
******************************************************************************/
@@ -241,20 +238,6 @@ static void fetch_dispatch_jobs(void)
/* exported interface documented in content/fetch.h */
nserror fetch_init(void)
{
- if (lwc_intern_string("http", SLEN("http"), &fetch_http_lwc) !=
- lwc_error_ok) {
- LOG(("Failed to initialise the fetch module "
- "(couldn't intern \"http\")."));
- return NSERROR_INIT_FAILED;
- }
-
- if (lwc_intern_string("https", SLEN("https"), &fetch_https_lwc) !=
- lwc_error_ok) {
- LOG(("Failed to initialise the fetch module "
- "(couldn't intern \"https\")."));
- return NSERROR_INIT_FAILED;
- }
-
fetch_curl_register();
fetch_data_register();
fetch_file_register();
@@ -278,9 +261,6 @@ void fetch_quit(void)
}
fetch_unref_fetcher(fetchers);
}
-
- lwc_string_unref(fetch_http_lwc);
- lwc_string_unref(fetch_https_lwc);
}
/* exported interface documented in content/fetch.h */
@@ -383,11 +363,11 @@ struct fetch * fetch_start(nsurl *url, nsurl *referer,
&match) != lwc_error_ok) {
match = false;
}
- if (lwc_string_isequal(scheme, fetch_https_lwc,
+ if (lwc_string_isequal(scheme, corestring_lwc_https,
&match1) != lwc_error_ok) {
match1 = false;
}
- if (lwc_string_isequal(ref_scheme, fetch_http_lwc,
+ if (lwc_string_isequal(ref_scheme, corestring_lwc_http,
&match2) != lwc_error_ok) {
match2= false;
}
diff --git a/utils/corestrings.c b/utils/corestrings.c
index 85bced5..ebe7c99 100644
--- a/utils/corestrings.c
+++ b/utils/corestrings.c
@@ -59,6 +59,7 @@ lwc_string *corestring_lwc_head;
lwc_string *corestring_lwc_hidden;
lwc_string *corestring_lwc_hr;
lwc_string *corestring_lwc_html;
+lwc_string *corestring_lwc_http;
lwc_string *corestring_lwc_https;
lwc_string *corestring_lwc_iframe;
lwc_string *corestring_lwc_image;
@@ -307,6 +308,7 @@ void corestrings_fini(void)
CSS_LWC_STRING_UNREF(hidden);
CSS_LWC_STRING_UNREF(hr);
CSS_LWC_STRING_UNREF(html);
+ CSS_LWC_STRING_UNREF(http);
CSS_LWC_STRING_UNREF(https);
CSS_LWC_STRING_UNREF(iframe);
CSS_LWC_STRING_UNREF(image);
@@ -579,6 +581,7 @@ nserror corestrings_init(void)
CSS_LWC_STRING_INTERN(hidden);
CSS_LWC_STRING_INTERN(hr);
CSS_LWC_STRING_INTERN(html);
+ CSS_LWC_STRING_INTERN(http);
CSS_LWC_STRING_INTERN(https);
CSS_LWC_STRING_INTERN(iframe);
CSS_LWC_STRING_INTERN(image);
diff --git a/utils/corestrings.h b/utils/corestrings.h
index 411f9ce..5c3349f 100644
--- a/utils/corestrings.h
+++ b/utils/corestrings.h
@@ -63,6 +63,7 @@ extern lwc_string *corestring_lwc_head;
extern lwc_string *corestring_lwc_hidden;
extern lwc_string *corestring_lwc_hr;
extern lwc_string *corestring_lwc_html;
+extern lwc_string *corestring_lwc_http;
extern lwc_string *corestring_lwc_https;
extern lwc_string *corestring_lwc_iframe;
extern lwc_string *corestring_lwc_image;
-----------------------------------------------------------------------
Summary of changes:
content/fetch.c | 26 +++-----------------------
utils/corestrings.c | 3 +++
utils/corestrings.h | 1 +
3 files changed, 7 insertions(+), 23 deletions(-)
diff --git a/content/fetch.c b/content/fetch.c
index 2d53b31..4736670 100644
--- a/content/fetch.c
+++ b/content/fetch.c
@@ -45,6 +45,7 @@
#include "content/fetchers/file.h"
#include "content/urldb.h"
#include "desktop/netsurf.h"
+#include "utils/corestrings.h"
#include "utils/nsoption.h"
#include "utils/log.h"
#include "utils/messages.h"
@@ -97,10 +98,6 @@ static struct fetch *queue_ring = 0; /**< Ring of queued fetches */
#define fetch_ref_fetcher(F) F->refcount++
-/* Static lwc_strings */
-static lwc_string *fetch_http_lwc;
-static lwc_string *fetch_https_lwc;
-
/******************************************************************************
* fetch internals *
******************************************************************************/
@@ -241,20 +238,6 @@ static void fetch_dispatch_jobs(void)
/* exported interface documented in content/fetch.h */
nserror fetch_init(void)
{
- if (lwc_intern_string("http", SLEN("http"), &fetch_http_lwc) !=
- lwc_error_ok) {
- LOG(("Failed to initialise the fetch module "
- "(couldn't intern \"http\")."));
- return NSERROR_INIT_FAILED;
- }
-
- if (lwc_intern_string("https", SLEN("https"), &fetch_https_lwc) !=
- lwc_error_ok) {
- LOG(("Failed to initialise the fetch module "
- "(couldn't intern \"https\")."));
- return NSERROR_INIT_FAILED;
- }
-
fetch_curl_register();
fetch_data_register();
fetch_file_register();
@@ -278,9 +261,6 @@ void fetch_quit(void)
}
fetch_unref_fetcher(fetchers);
}
-
- lwc_string_unref(fetch_http_lwc);
- lwc_string_unref(fetch_https_lwc);
}
/* exported interface documented in content/fetch.h */
@@ -383,11 +363,11 @@ struct fetch * fetch_start(nsurl *url, nsurl *referer,
&match) != lwc_error_ok) {
match = false;
}
- if (lwc_string_isequal(scheme, fetch_https_lwc,
+ if (lwc_string_isequal(scheme, corestring_lwc_https,
&match1) != lwc_error_ok) {
match1 = false;
}
- if (lwc_string_isequal(ref_scheme, fetch_http_lwc,
+ if (lwc_string_isequal(ref_scheme, corestring_lwc_http,
&match2) != lwc_error_ok) {
match2= false;
}
diff --git a/utils/corestrings.c b/utils/corestrings.c
index 85bced5..ebe7c99 100644
--- a/utils/corestrings.c
+++ b/utils/corestrings.c
@@ -59,6 +59,7 @@ lwc_string *corestring_lwc_head;
lwc_string *corestring_lwc_hidden;
lwc_string *corestring_lwc_hr;
lwc_string *corestring_lwc_html;
+lwc_string *corestring_lwc_http;
lwc_string *corestring_lwc_https;
lwc_string *corestring_lwc_iframe;
lwc_string *corestring_lwc_image;
@@ -307,6 +308,7 @@ void corestrings_fini(void)
CSS_LWC_STRING_UNREF(hidden);
CSS_LWC_STRING_UNREF(hr);
CSS_LWC_STRING_UNREF(html);
+ CSS_LWC_STRING_UNREF(http);
CSS_LWC_STRING_UNREF(https);
CSS_LWC_STRING_UNREF(iframe);
CSS_LWC_STRING_UNREF(image);
@@ -579,6 +581,7 @@ nserror corestrings_init(void)
CSS_LWC_STRING_INTERN(hidden);
CSS_LWC_STRING_INTERN(hr);
CSS_LWC_STRING_INTERN(html);
+ CSS_LWC_STRING_INTERN(http);
CSS_LWC_STRING_INTERN(https);
CSS_LWC_STRING_INTERN(iframe);
CSS_LWC_STRING_INTERN(image);
diff --git a/utils/corestrings.h b/utils/corestrings.h
index 411f9ce..5c3349f 100644
--- a/utils/corestrings.h
+++ b/utils/corestrings.h
@@ -63,6 +63,7 @@ extern lwc_string *corestring_lwc_head;
extern lwc_string *corestring_lwc_hidden;
extern lwc_string *corestring_lwc_hr;
extern lwc_string *corestring_lwc_html;
+extern lwc_string *corestring_lwc_http;
extern lwc_string *corestring_lwc_https;
extern lwc_string *corestring_lwc_iframe;
extern lwc_string *corestring_lwc_image;
--
NetSurf Browser
9 years
netsurf: branch master updated. release/3.0-985-g72510f5
by NetSurf Browser Project
Gitweb links:
...log http://git.netsurf-browser.org/netsurf.git/shortlog/72510f550bf42cf660faf...
...commit http://git.netsurf-browser.org/netsurf.git/commit/72510f550bf42cf660faf1a...
...tree http://git.netsurf-browser.org/netsurf.git/tree/72510f550bf42cf660faf1a19...
The branch, master has been updated
via 72510f550bf42cf660faf1a1929cb6df59bf86fd (commit)
from 20e789955dc3d1e720193713306b44e1ffec0516 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commitdiff http://git.netsurf-browser.org/netsurf.git/commit/?id=72510f550bf42cf660f...
commit 72510f550bf42cf660faf1a1929cb6df59bf86fd
Author: Michael Drake <tlsa(a)netsurf-browser.org>
Commit: Michael Drake <tlsa(a)netsurf-browser.org>
Use corestrings in box construction.
diff --git a/render/box.h b/render/box.h
index 878ebc8..e781a66 100644
--- a/render/box.h
+++ b/render/box.h
@@ -339,8 +339,6 @@ bool box_handle_scrollbars(struct content *c, struct box *box,
bool box_vscrollbar_present(const struct box *box);
bool box_hscrollbar_present(const struct box *box);
-nserror box_construct_init(void);
-void box_construct_fini(void);
nserror dom_to_box(struct dom_node *n, struct html_content *c,
box_construct_complete_cb cb);
diff --git a/render/box_construct.c b/render/box_construct.c
index 3d077e8..ce21b70 100644
--- a/render/box_construct.c
+++ b/render/box_construct.c
@@ -210,134 +210,13 @@ static const box_type box_map[] = {
BOX_NONE /*CSS_DISPLAY_NONE*/
};
-/** Key for box userdata on DOM elements (== '__ns_box') */
-static dom_string *kstr_box_key;
-static dom_string *kstr_title;
-static dom_string *kstr_id;
-static dom_string *kstr_colspan;
-static dom_string *kstr_rowspan;
-static dom_string *kstr_style;
-static dom_string *kstr_href;
-static dom_string *kstr_name;
-static dom_string *kstr_target;
-static dom_string *kstr_alt;
-static dom_string *kstr_src;
-static dom_string *kstr_codebase;
-static dom_string *kstr_classid;
-static dom_string *kstr_data;
-static dom_string *kstr_rows;
-static dom_string *kstr_cols;
-static dom_string *kstr_border;
-static dom_string *kstr_frameborder;
-static dom_string *kstr_bordercolor;
-static dom_string *kstr_noresize;
-static dom_string *kstr_scrolling;
-static dom_string *kstr_marginwidth;
-static dom_string *kstr_marginheight;
-static dom_string *kstr_type;
-static dom_string *kstr_value;
-static dom_string *kstr_selected;
-
-nserror box_construct_init(void)
-{
- dom_exception err;
-
- err = dom_string_create_interned((const uint8_t *) "__ns_box",
- SLEN("__ns_box"), &kstr_box_key);
- if (err != DOM_NO_ERR || kstr_box_key == NULL)
- goto error;
-
-#define BOX_CONSTRUCT_STRING_INTERN(NAME) \
- err = dom_string_create_interned((const uint8_t *)#NAME, \
- sizeof(#NAME) - 1, \
- &kstr_##NAME ); \
- if ((err != DOM_NO_ERR) || (kstr_##NAME == NULL)) \
- goto error
-
- BOX_CONSTRUCT_STRING_INTERN(title);
- BOX_CONSTRUCT_STRING_INTERN(id);
- BOX_CONSTRUCT_STRING_INTERN(colspan);
- BOX_CONSTRUCT_STRING_INTERN(rowspan);
- BOX_CONSTRUCT_STRING_INTERN(style);
- BOX_CONSTRUCT_STRING_INTERN(href);
- BOX_CONSTRUCT_STRING_INTERN(name);
- BOX_CONSTRUCT_STRING_INTERN(target);
- BOX_CONSTRUCT_STRING_INTERN(alt);
- BOX_CONSTRUCT_STRING_INTERN(src);
- BOX_CONSTRUCT_STRING_INTERN(codebase);
- BOX_CONSTRUCT_STRING_INTERN(classid);
- BOX_CONSTRUCT_STRING_INTERN(data);
- BOX_CONSTRUCT_STRING_INTERN(rows);
- BOX_CONSTRUCT_STRING_INTERN(cols);
- BOX_CONSTRUCT_STRING_INTERN(border);
- BOX_CONSTRUCT_STRING_INTERN(frameborder);
- BOX_CONSTRUCT_STRING_INTERN(bordercolor);
- BOX_CONSTRUCT_STRING_INTERN(noresize);
- BOX_CONSTRUCT_STRING_INTERN(scrolling);
- BOX_CONSTRUCT_STRING_INTERN(marginwidth);
- BOX_CONSTRUCT_STRING_INTERN(marginheight);
- BOX_CONSTRUCT_STRING_INTERN(type);
- BOX_CONSTRUCT_STRING_INTERN(value);
- BOX_CONSTRUCT_STRING_INTERN(selected);
-
-#undef BOX_CONSTRUCT_STRING_INTERN
-
- return NSERROR_OK;
-
-error:
- return NSERROR_NOMEM;
-}
-
-void box_construct_fini(void)
-{
- if (kstr_box_key != NULL) {
- dom_string_unref(kstr_box_key);
- kstr_box_key = NULL;
- }
-
-#define BOX_CONSTRUCT_STRING_UNREF(NAME) \
- do { \
- if (kstr_##NAME != NULL) { \
- dom_string_unref(kstr_##NAME); \
- kstr_##NAME = NULL; \
- } \
- } while (0) \
-
- BOX_CONSTRUCT_STRING_UNREF(title);
- BOX_CONSTRUCT_STRING_UNREF(id);
- BOX_CONSTRUCT_STRING_UNREF(colspan);
- BOX_CONSTRUCT_STRING_UNREF(rowspan);
- BOX_CONSTRUCT_STRING_UNREF(style);
- BOX_CONSTRUCT_STRING_UNREF(href);
- BOX_CONSTRUCT_STRING_UNREF(name);
- BOX_CONSTRUCT_STRING_UNREF(target);
- BOX_CONSTRUCT_STRING_UNREF(alt);
- BOX_CONSTRUCT_STRING_UNREF(src);
- BOX_CONSTRUCT_STRING_UNREF(codebase);
- BOX_CONSTRUCT_STRING_UNREF(classid);
- BOX_CONSTRUCT_STRING_UNREF(data);
- BOX_CONSTRUCT_STRING_UNREF(rows);
- BOX_CONSTRUCT_STRING_UNREF(cols);
- BOX_CONSTRUCT_STRING_UNREF(border);
- BOX_CONSTRUCT_STRING_UNREF(frameborder);
- BOX_CONSTRUCT_STRING_UNREF(bordercolor);
- BOX_CONSTRUCT_STRING_UNREF(noresize);
- BOX_CONSTRUCT_STRING_UNREF(scrolling);
- BOX_CONSTRUCT_STRING_UNREF(marginwidth);
- BOX_CONSTRUCT_STRING_UNREF(marginheight);
- BOX_CONSTRUCT_STRING_UNREF(type);
- BOX_CONSTRUCT_STRING_UNREF(value);
- BOX_CONSTRUCT_STRING_UNREF(selected);
-
-#undef BOX_CONSTRUCT_DOM_STRING_UNREF
-}
-
static inline struct box *box_for_node(dom_node *n)
{
struct box *box = NULL;
dom_exception err;
- err = dom_node_get_user_data(n, kstr_box_key, (void *) &box);
+ err = dom_node_get_user_data(n, corestring_dom___ns_key_box_node_data,
+ (void *) &box);
if (err != DOM_NO_ERR)
return NULL;
@@ -859,7 +738,7 @@ bool box_construct_element(struct box_construct_ctx *ctx,
return false;
/* Extract title attribute, if present */
- err = dom_element_get_attribute(ctx->n, kstr_title, &title0);
+ err = dom_element_get_attribute(ctx->n, corestring_dom_title, &title0);
if (err != DOM_NO_ERR)
return false;
@@ -880,7 +759,7 @@ bool box_construct_element(struct box_construct_ctx *ctx,
}
/* Extract id attribute, if present */
- err = dom_element_get_attribute(ctx->n, kstr_id, &s);
+ err = dom_element_get_attribute(ctx->n, corestring_dom_id, &s);
if (err != DOM_NO_ERR)
return false;
@@ -903,7 +782,7 @@ bool box_construct_element(struct box_construct_ctx *ctx,
ctx->root_box = box;
/* Deal with colspan/rowspan */
- err = dom_element_get_attribute(ctx->n, kstr_colspan, &s);
+ err = dom_element_get_attribute(ctx->n, corestring_dom_colspan, &s);
if (err != DOM_NO_ERR)
return false;
@@ -916,7 +795,7 @@ bool box_construct_element(struct box_construct_ctx *ctx,
dom_string_unref(s);
}
- err = dom_element_get_attribute(ctx->n, kstr_rowspan, &s);
+ err = dom_element_get_attribute(ctx->n, corestring_dom_rowspan, &s);
if (err != DOM_NO_ERR)
return false;
@@ -1000,7 +879,8 @@ bool box_construct_element(struct box_construct_ctx *ctx,
}
/* Attach DOM node to box */
- err = dom_node_set_user_data(ctx->n, kstr_box_key, box, NULL,
+ err = dom_node_set_user_data(ctx->n,
+ corestring_dom___ns_key_box_node_data, box, NULL,
(void *) &old_box);
if (err != DOM_NO_ERR)
return false;
@@ -1433,7 +1313,7 @@ css_select_results *box_get_style(html_content *c,
nscss_select_ctx ctx;
/* Firstly, construct inline stylesheet, if any */
- err = dom_element_get_attribute(n, kstr_style, &s);
+ err = dom_element_get_attribute(n, corestring_dom_style, &s);
if (err != DOM_NO_ERR)
return NULL;
@@ -1575,7 +1455,7 @@ bool box_a(BOX_SPECIAL_PARAMS)
dom_string *s;
dom_exception err;
- err = dom_element_get_attribute(n, kstr_href, &s);
+ err = dom_element_get_attribute(n, corestring_dom_href, &s);
if (err == DOM_NO_ERR && s != NULL) {
ok = box_extract_link(dom_string_data(s),
content->base_url, &url);
@@ -1590,7 +1470,7 @@ bool box_a(BOX_SPECIAL_PARAMS)
}
/* name and id share the same namespace */
- err = dom_element_get_attribute(n, kstr_name, &s);
+ err = dom_element_get_attribute(n, corestring_dom_name, &s);
if (err == DOM_NO_ERR && s != NULL) {
lwc_string *lwc_name;
@@ -1609,7 +1489,7 @@ bool box_a(BOX_SPECIAL_PARAMS)
}
/* target frame [16.3] */
- err = dom_element_get_attribute(n, kstr_target, &s);
+ err = dom_element_get_attribute(n, corestring_dom_target, &s);
if (err == DOM_NO_ERR && s != NULL) {
if (dom_string_caseless_lwc_isequal(s,
corestring_lwc__blank))
@@ -1663,7 +1543,7 @@ bool box_image(BOX_SPECIAL_PARAMS)
return true;
/* handle alt text */
- err = dom_element_get_attribute(n, kstr_alt, &s);
+ err = dom_element_get_attribute(n, corestring_dom_alt, &s);
if (err == DOM_NO_ERR && s != NULL) {
char *alt = squash_whitespace(dom_string_data(s));
dom_string_unref(s);
@@ -1687,7 +1567,7 @@ bool box_image(BOX_SPECIAL_PARAMS)
box->usemap++;
/* get image URL */
- err = dom_element_get_attribute(n, kstr_src, &s);
+ err = dom_element_get_attribute(n, corestring_dom_src, &s);
if (err != DOM_NO_ERR || s == NULL)
return true;
@@ -1790,7 +1670,7 @@ bool box_object(BOX_SPECIAL_PARAMS)
/* codebase, classid, and data are URLs
* (codebase is the base for the other two) */
- err = dom_element_get_attribute(n, kstr_codebase, &codebase);
+ err = dom_element_get_attribute(n, corestring_dom_codebase, &codebase);
if (err == DOM_NO_ERR && codebase != NULL) {
if (box_extract_link(dom_string_data(codebase),
content->base_url,
@@ -1803,7 +1683,7 @@ bool box_object(BOX_SPECIAL_PARAMS)
if (params->codebase == NULL)
params->codebase = nsurl_ref(content->base_url);
- err = dom_element_get_attribute(n, kstr_classid, &classid);
+ err = dom_element_get_attribute(n, corestring_dom_classid, &classid);
if (err == DOM_NO_ERR && classid != NULL) {
if (box_extract_link(dom_string_data(classid), params->codebase,
¶ms->classid) == false) {
@@ -1813,7 +1693,7 @@ bool box_object(BOX_SPECIAL_PARAMS)
dom_string_unref(classid);
}
- err = dom_element_get_attribute(n, kstr_data, &data);
+ err = dom_element_get_attribute(n, corestring_dom_data, &data);
if (err == DOM_NO_ERR && data != NULL) {
if (box_extract_link(dom_string_data(data), params->codebase,
¶ms->data) == false) {
@@ -2052,7 +1932,7 @@ bool box_create_frameset(struct content_html_frames *f, dom_node *n,
colour default_border_colour = 0x000000;
/* parse rows and columns */
- err = dom_element_get_attribute(n, kstr_rows, &s);
+ err = dom_element_get_attribute(n, corestring_dom_rows, &s);
if (err == DOM_NO_ERR && s != NULL) {
row_height = box_parse_multi_lengths(dom_string_data(s), &rows);
dom_string_unref(s);
@@ -2066,7 +1946,7 @@ bool box_create_frameset(struct content_html_frames *f, dom_node *n,
row_height->unit = FRAME_DIMENSION_PERCENT;
}
- err = dom_element_get_attribute(n, kstr_cols, &s);
+ err = dom_element_get_attribute(n, corestring_dom_cols, &s);
if (err == DOM_NO_ERR && s != NULL) {
col_width = box_parse_multi_lengths(dom_string_data(s), &cols);
dom_string_unref(s);
@@ -2085,7 +1965,7 @@ bool box_create_frameset(struct content_html_frames *f, dom_node *n,
}
/* common extension: border="0|1" to control all children */
- err = dom_element_get_attribute(n, kstr_border, &s);
+ err = dom_element_get_attribute(n, corestring_dom_border, &s);
if (err == DOM_NO_ERR && s != NULL) {
if ((dom_string_data(s)[0] == '0') &&
(dom_string_data(s)[1] == '\0'))
@@ -2094,7 +1974,7 @@ bool box_create_frameset(struct content_html_frames *f, dom_node *n,
}
/* common extension: frameborder="yes|no" to control all children */
- err = dom_element_get_attribute(n, kstr_frameborder, &s);
+ err = dom_element_get_attribute(n, corestring_dom_frameborder, &s);
if (err == DOM_NO_ERR && s != NULL) {
if (dom_string_caseless_lwc_isequal(s,
corestring_lwc_no) == 0)
@@ -2104,7 +1984,7 @@ bool box_create_frameset(struct content_html_frames *f, dom_node *n,
/* common extension: bordercolor="#RRGGBB|<named colour>" to control
*all children */
- err = dom_element_get_attribute(n, kstr_bordercolor, &s);
+ err = dom_element_get_attribute(n, corestring_dom_bordercolor, &s);
if (err == DOM_NO_ERR && s != NULL) {
css_color color;
@@ -2233,7 +2113,7 @@ bool box_create_frameset(struct content_html_frames *f, dom_node *n,
/* get frame URL (not required) */
url = NULL;
- err = dom_element_get_attribute(c, kstr_src, &s);
+ err = dom_element_get_attribute(c, corestring_dom_src, &s);
if (err == DOM_NO_ERR && s != NULL) {
box_extract_link(dom_string_data(s),
content->base_url, &url);
@@ -2250,17 +2130,17 @@ bool box_create_frameset(struct content_html_frames *f, dom_node *n,
}
/* fill in specified values */
- err = dom_element_get_attribute(c, kstr_name, &s);
+ err = dom_element_get_attribute(c, corestring_dom_name, &s);
if (err == DOM_NO_ERR && s != NULL) {
frame->name = talloc_strdup(content->bctx,
dom_string_data(s));
dom_string_unref(s);
}
- dom_element_has_attribute(c, kstr_noresize,
+ dom_element_has_attribute(c, corestring_dom_noresize,
&frame->no_resize);
- err = dom_element_get_attribute(c, kstr_frameborder,
+ err = dom_element_get_attribute(c, corestring_dom_frameborder,
&s);
if (err == DOM_NO_ERR && s != NULL) {
i = atoi(dom_string_data(s));
@@ -2268,7 +2148,7 @@ bool box_create_frameset(struct content_html_frames *f, dom_node *n,
dom_string_unref(s);
}
- err = dom_element_get_attribute(c, kstr_scrolling, &s);
+ err = dom_element_get_attribute(c, corestring_dom_scrolling, &s);
if (err == DOM_NO_ERR && s != NULL) {
if (dom_string_caseless_lwc_isequal(s,
corestring_lwc_yes))
@@ -2279,21 +2159,21 @@ bool box_create_frameset(struct content_html_frames *f, dom_node *n,
dom_string_unref(s);
}
- err = dom_element_get_attribute(c, kstr_marginwidth,
+ err = dom_element_get_attribute(c, corestring_dom_marginwidth,
&s);
if (err == DOM_NO_ERR && s != NULL) {
frame->margin_width = atoi(dom_string_data(s));
dom_string_unref(s);
}
- err = dom_element_get_attribute(c, kstr_marginheight,
+ err = dom_element_get_attribute(c, corestring_dom_marginheight,
&s);
if (err == DOM_NO_ERR && s != NULL) {
frame->margin_height = atoi(dom_string_data(s));
dom_string_unref(s);
}
- err = dom_element_get_attribute(c, kstr_bordercolor,
+ err = dom_element_get_attribute(c, corestring_dom_bordercolor,
&s);
if (err == DOM_NO_ERR && s != NULL) {
css_color color;
@@ -2363,7 +2243,7 @@ bool box_iframe(BOX_SPECIAL_PARAMS)
return true;
/* get frame URL */
- err = dom_element_get_attribute(n, kstr_src, &s);
+ err = dom_element_get_attribute(n, corestring_dom_src, &s);
if (err != DOM_NO_ERR || s == NULL)
return true;
if (box_extract_link(dom_string_data(s), content->base_url,
@@ -2403,20 +2283,20 @@ bool box_iframe(BOX_SPECIAL_PARAMS)
content->iframe = iframe;
/* fill in specified values */
- err = dom_element_get_attribute(n, kstr_name, &s);
+ err = dom_element_get_attribute(n, corestring_dom_name, &s);
if (err == DOM_NO_ERR && s != NULL) {
iframe->name = talloc_strdup(content->bctx, dom_string_data(s));
dom_string_unref(s);
}
- err = dom_element_get_attribute(n, kstr_frameborder, &s);
+ err = dom_element_get_attribute(n, corestring_dom_frameborder, &s);
if (err == DOM_NO_ERR && s != NULL) {
i = atoi(dom_string_data(s));
iframe->border = (i != 0);
dom_string_unref(s);
}
- err = dom_element_get_attribute(n, kstr_bordercolor, &s);
+ err = dom_element_get_attribute(n, corestring_dom_bordercolor, &s);
if (err == DOM_NO_ERR && s != NULL) {
css_color color;
@@ -2426,7 +2306,7 @@ bool box_iframe(BOX_SPECIAL_PARAMS)
dom_string_unref(s);
}
- err = dom_element_get_attribute(n, kstr_scrolling, &s);
+ err = dom_element_get_attribute(n, corestring_dom_scrolling, &s);
if (err == DOM_NO_ERR && s != NULL) {
if (dom_string_caseless_lwc_isequal(s,
corestring_lwc_yes))
@@ -2437,13 +2317,13 @@ bool box_iframe(BOX_SPECIAL_PARAMS)
dom_string_unref(s);
}
- err = dom_element_get_attribute(n, kstr_marginwidth, &s);
+ err = dom_element_get_attribute(n, corestring_dom_marginwidth, &s);
if (err == DOM_NO_ERR && s != NULL) {
iframe->margin_width = atoi(dom_string_data(s));
dom_string_unref(s);
}
- err = dom_element_get_attribute(n, kstr_marginheight, &s);
+ err = dom_element_get_attribute(n, corestring_dom_marginheight, &s);
if (err == DOM_NO_ERR && s != NULL) {
iframe->margin_height = atoi(dom_string_data(s));
dom_string_unref(s);
@@ -2504,7 +2384,7 @@ bool box_input(BOX_SPECIAL_PARAMS)
nsurl *url;
nserror error;
- dom_element_get_attribute(n, kstr_type, &type);
+ dom_element_get_attribute(n, corestring_dom_type, &type);
gadget = html_forms_get_control_for_node(content->forms, n);
if (gadget == NULL)
@@ -2589,7 +2469,7 @@ bool box_input(BOX_SPECIAL_PARAMS)
nsoption_bool(foreground_images) == true) {
dom_string *s;
- err = dom_element_get_attribute(n, kstr_src, &s);
+ err = dom_element_get_attribute(n, corestring_dom_src, &s);
if (err == DOM_NO_ERR && s != NULL) {
error = nsurl_join(content->base_url,
dom_string_data(s), &url);
@@ -2837,7 +2717,7 @@ bool box_select_add_option(struct form_control *control, dom_node *n)
if (text == NULL)
goto no_memory;
- err = dom_element_get_attribute(n, kstr_value, &s);
+ err = dom_element_get_attribute(n, corestring_dom_value, &s);
if (err == DOM_NO_ERR && s != NULL) {
value = strdup(dom_string_data(s));
dom_string_unref(s);
@@ -2848,7 +2728,7 @@ bool box_select_add_option(struct form_control *control, dom_node *n)
if (value == NULL)
goto no_memory;
- dom_element_has_attribute(n, kstr_selected, &selected);
+ dom_element_has_attribute(n, corestring_dom_selected, &selected);
/* replace spaces/TABs with hard spaces to prevent line wrapping */
text_nowrap = cnv_space2nbsp(text);
@@ -2924,7 +2804,7 @@ bool box_embed(BOX_SPECIAL_PARAMS)
params->params = NULL;
/* src is a URL */
- err = dom_element_get_attribute(n, kstr_src, &src);
+ err = dom_element_get_attribute(n, corestring_dom_src, &src);
if (err != DOM_NO_ERR || src == NULL)
return true;
if (box_extract_link(dom_string_data(src), content->base_url,
diff --git a/render/html.c b/render/html.c
index e10f1e9..0a7ab24 100644
--- a/render/html.c
+++ b/render/html.c
@@ -2180,8 +2180,6 @@ static content_type html_content_type(void)
static void html_fini(void)
{
- box_construct_fini();
-
html_css_fini();
}
@@ -2221,10 +2219,6 @@ nserror html_init(void)
if (error != NSERROR_OK)
goto error;
- error = box_construct_init();
- if (error != NSERROR_OK)
- goto error;
-
for (i = 0; i < NOF_ELEMENTS(html_types); i++) {
error = content_factory_register_handler(html_types[i],
&html_content_handler);
diff --git a/utils/corestrings.c b/utils/corestrings.c
index e60a75b..85bced5 100644
--- a/utils/corestrings.c
+++ b/utils/corestrings.c
@@ -116,6 +116,7 @@ lwc_string *corestring_lwc__top;
/* dom_string strings */
dom_string *corestring_dom_a;
+dom_string *corestring_dom_alt;
dom_string *corestring_dom_abort;
dom_string *corestring_dom_afterprint;
dom_string *corestring_dom_align;
@@ -136,14 +137,18 @@ dom_string *corestring_dom_cellspacing;
dom_string *corestring_dom_change;
dom_string *corestring_dom_charset;
dom_string *corestring_dom_class;
+dom_string *corestring_dom_classid;
dom_string *corestring_dom_click;
dom_string *corestring_dom_close;
+dom_string *corestring_dom_codebase;
dom_string *corestring_dom_color;
dom_string *corestring_dom_cols;
+dom_string *corestring_dom_colspan;
dom_string *corestring_dom_content;
dom_string *corestring_dom_contextmenu;
dom_string *corestring_dom_coords;
dom_string *corestring_dom_cuechange;
+dom_string *corestring_dom_data;
dom_string *corestring_dom_dblclick;
dom_string *corestring_dom_defer;
dom_string *corestring_dom_DOMAttrModified;
@@ -162,6 +167,7 @@ dom_string *corestring_dom_emptied;
dom_string *corestring_dom_ended;
dom_string *corestring_dom_error;
dom_string *corestring_dom_focus;
+dom_string *corestring_dom_frameborder;
dom_string *corestring_dom_hashchange;
dom_string *corestring_dom_height;
dom_string *corestring_dom_href;
@@ -180,6 +186,8 @@ dom_string *corestring_dom_loadeddata;
dom_string *corestring_dom_loadedmetadata;
dom_string *corestring_dom_loadstart;
dom_string *corestring_dom_map;
+dom_string *corestring_dom_marginheight;
+dom_string *corestring_dom_marginwidth;
dom_string *corestring_dom_media;
dom_string *corestring_dom_message;
dom_string *corestring_dom_mousedown;
@@ -190,6 +198,7 @@ dom_string *corestring_dom_mouseup;
dom_string *corestring_dom_mousewheel;
dom_string *corestring_dom_name;
dom_string *corestring_dom_nohref;
+dom_string *corestring_dom_noresize;
dom_string *corestring_dom_offline;
dom_string *corestring_dom_online;
dom_string *corestring_dom_pagehide;
@@ -206,10 +215,13 @@ dom_string *corestring_dom_rel;
dom_string *corestring_dom_reset;
dom_string *corestring_dom_resize;
dom_string *corestring_dom_rows;
+dom_string *corestring_dom_rowspan;
dom_string *corestring_dom_scroll;
+dom_string *corestring_dom_scrolling;
dom_string *corestring_dom_seeked;
dom_string *corestring_dom_seeking;
dom_string *corestring_dom_select;
+dom_string *corestring_dom_selected;
dom_string *corestring_dom_shape;
dom_string *corestring_dom_show;
dom_string *corestring_dom_size;
@@ -224,9 +236,11 @@ dom_string *corestring_dom_target;
dom_string *corestring_dom_text;
dom_string *corestring_dom_text_javascript;
dom_string *corestring_dom_timeupdate;
+dom_string *corestring_dom_title;
dom_string *corestring_dom_type;
dom_string *corestring_dom_unload;
dom_string *corestring_dom_valign;
+dom_string *corestring_dom_value;
dom_string *corestring_dom_vlink;
dom_string *corestring_dom_volumechange;
dom_string *corestring_dom_vspace;
@@ -242,6 +256,7 @@ dom_string *corestring_dom_radio;
dom_string *corestring_dom_checkbox;
dom_string *corestring_dom_file;
dom_string *corestring_dom_on;
+dom_string *corestring_dom___ns_key_box_node_data;
dom_string *corestring_dom___ns_key_libcss_node_data;
dom_string *corestring_dom___ns_key_file_name_node_data;
dom_string *corestring_dom___ns_key_image_coords_node_data;
@@ -361,6 +376,7 @@ void corestrings_fini(void)
CSS_DOM_STRING_UNREF(abort);
CSS_DOM_STRING_UNREF(afterprint);
CSS_DOM_STRING_UNREF(align);
+ CSS_DOM_STRING_UNREF(alt);
CSS_DOM_STRING_UNREF(area);
CSS_DOM_STRING_UNREF(async);
CSS_DOM_STRING_UNREF(background);
@@ -378,14 +394,18 @@ void corestrings_fini(void)
CSS_DOM_STRING_UNREF(change);
CSS_DOM_STRING_UNREF(charset);
CSS_DOM_STRING_UNREF(class);
+ CSS_DOM_STRING_UNREF(classid);
CSS_DOM_STRING_UNREF(click);
CSS_DOM_STRING_UNREF(close);
+ CSS_DOM_STRING_UNREF(codebase);
CSS_DOM_STRING_UNREF(color);
CSS_DOM_STRING_UNREF(cols);
+ CSS_DOM_STRING_UNREF(colspan);
CSS_DOM_STRING_UNREF(content);
CSS_DOM_STRING_UNREF(contextmenu);
CSS_DOM_STRING_UNREF(coords);
CSS_DOM_STRING_UNREF(cuechange);
+ CSS_DOM_STRING_UNREF(data);
CSS_DOM_STRING_UNREF(dblclick);
CSS_DOM_STRING_UNREF(defer);
CSS_DOM_STRING_UNREF(DOMAttrModified);
@@ -404,6 +424,7 @@ void corestrings_fini(void)
CSS_DOM_STRING_UNREF(ended);
CSS_DOM_STRING_UNREF(error);
CSS_DOM_STRING_UNREF(focus);
+ CSS_DOM_STRING_UNREF(frameborder);
CSS_DOM_STRING_UNREF(hashchange);
CSS_DOM_STRING_UNREF(height);
CSS_DOM_STRING_UNREF(href);
@@ -422,6 +443,8 @@ void corestrings_fini(void)
CSS_DOM_STRING_UNREF(loadedmetadata);
CSS_DOM_STRING_UNREF(loadstart);
CSS_DOM_STRING_UNREF(map);
+ CSS_DOM_STRING_UNREF(marginheight);
+ CSS_DOM_STRING_UNREF(marginwidth);
CSS_DOM_STRING_UNREF(media);
CSS_DOM_STRING_UNREF(message);
CSS_DOM_STRING_UNREF(mousedown);
@@ -432,6 +455,7 @@ void corestrings_fini(void)
CSS_DOM_STRING_UNREF(mousewheel);
CSS_DOM_STRING_UNREF(name);
CSS_DOM_STRING_UNREF(nohref);
+ CSS_DOM_STRING_UNREF(noresize);
CSS_DOM_STRING_UNREF(offline);
CSS_DOM_STRING_UNREF(online);
CSS_DOM_STRING_UNREF(pagehide);
@@ -448,10 +472,13 @@ void corestrings_fini(void)
CSS_DOM_STRING_UNREF(reset);
CSS_DOM_STRING_UNREF(resize);
CSS_DOM_STRING_UNREF(rows);
+ CSS_DOM_STRING_UNREF(rowspan);
CSS_DOM_STRING_UNREF(scroll);
+ CSS_DOM_STRING_UNREF(scrolling);
CSS_DOM_STRING_UNREF(seeked);
CSS_DOM_STRING_UNREF(seeking);
CSS_DOM_STRING_UNREF(select);
+ CSS_DOM_STRING_UNREF(selected);
CSS_DOM_STRING_UNREF(shape);
CSS_DOM_STRING_UNREF(show);
CSS_DOM_STRING_UNREF(size);
@@ -466,9 +493,11 @@ void corestrings_fini(void)
CSS_DOM_STRING_UNREF(text);
CSS_DOM_STRING_UNREF(text_javascript);
CSS_DOM_STRING_UNREF(timeupdate);
+ CSS_DOM_STRING_UNREF(title);
CSS_DOM_STRING_UNREF(type);
CSS_DOM_STRING_UNREF(unload);
CSS_DOM_STRING_UNREF(valign);
+ CSS_DOM_STRING_UNREF(value);
CSS_DOM_STRING_UNREF(vlink);
CSS_DOM_STRING_UNREF(volumechange);
CSS_DOM_STRING_UNREF(vspace);
@@ -487,6 +516,7 @@ void corestrings_fini(void)
CSS_DOM_STRING_UNREF(file);
CSS_DOM_STRING_UNREF(on);
/* DOM userdata keys, not really CSS */
+ CSS_DOM_STRING_UNREF(__ns_key_box_node_data);
CSS_DOM_STRING_UNREF(__ns_key_libcss_node_data);
CSS_DOM_STRING_UNREF(__ns_key_file_name_node_data);
CSS_DOM_STRING_UNREF(__ns_key_image_coords_node_data);
@@ -638,6 +668,7 @@ nserror corestrings_init(void)
CSS_DOM_STRING_INTERN(abort);
CSS_DOM_STRING_INTERN(afterprint);
CSS_DOM_STRING_INTERN(align);
+ CSS_DOM_STRING_INTERN(alt);
CSS_DOM_STRING_INTERN(area);
CSS_DOM_STRING_INTERN(async);
CSS_DOM_STRING_INTERN(background);
@@ -655,14 +686,18 @@ nserror corestrings_init(void)
CSS_DOM_STRING_INTERN(change);
CSS_DOM_STRING_INTERN(charset);
CSS_DOM_STRING_INTERN(class);
+ CSS_DOM_STRING_INTERN(classid);
CSS_DOM_STRING_INTERN(click);
CSS_DOM_STRING_INTERN(close);
+ CSS_DOM_STRING_INTERN(codebase);
CSS_DOM_STRING_INTERN(color);
CSS_DOM_STRING_INTERN(cols);
+ CSS_DOM_STRING_INTERN(colspan);
CSS_DOM_STRING_INTERN(content);
CSS_DOM_STRING_INTERN(contextmenu);
CSS_DOM_STRING_INTERN(coords);
CSS_DOM_STRING_INTERN(cuechange);
+ CSS_DOM_STRING_INTERN(data);
CSS_DOM_STRING_INTERN(dblclick);
CSS_DOM_STRING_INTERN(defer);
CSS_DOM_STRING_INTERN(DOMAttrModified);
@@ -681,6 +716,7 @@ nserror corestrings_init(void)
CSS_DOM_STRING_INTERN(ended);
CSS_DOM_STRING_INTERN(error);
CSS_DOM_STRING_INTERN(focus);
+ CSS_DOM_STRING_INTERN(frameborder);
CSS_DOM_STRING_INTERN(hashchange);
CSS_DOM_STRING_INTERN(height);
CSS_DOM_STRING_INTERN(href);
@@ -699,6 +735,8 @@ nserror corestrings_init(void)
CSS_DOM_STRING_INTERN(loadedmetadata);
CSS_DOM_STRING_INTERN(loadstart);
CSS_DOM_STRING_INTERN(map);
+ CSS_DOM_STRING_INTERN(marginheight);
+ CSS_DOM_STRING_INTERN(marginwidth);
CSS_DOM_STRING_INTERN(media);
CSS_DOM_STRING_INTERN(message);
CSS_DOM_STRING_INTERN(mousedown);
@@ -709,6 +747,7 @@ nserror corestrings_init(void)
CSS_DOM_STRING_INTERN(mousewheel);
CSS_DOM_STRING_INTERN(name);
CSS_DOM_STRING_INTERN(nohref);
+ CSS_DOM_STRING_INTERN(noresize);
CSS_DOM_STRING_INTERN(offline);
CSS_DOM_STRING_INTERN(online);
CSS_DOM_STRING_INTERN(pagehide);
@@ -725,10 +764,13 @@ nserror corestrings_init(void)
CSS_DOM_STRING_INTERN(reset);
CSS_DOM_STRING_INTERN(resize);
CSS_DOM_STRING_INTERN(rows);
+ CSS_DOM_STRING_INTERN(rowspan);
CSS_DOM_STRING_INTERN(scroll);
+ CSS_DOM_STRING_INTERN(scrolling);
CSS_DOM_STRING_INTERN(seeked);
CSS_DOM_STRING_INTERN(seeking);
CSS_DOM_STRING_INTERN(select);
+ CSS_DOM_STRING_INTERN(selected);
CSS_DOM_STRING_INTERN(shape);
CSS_DOM_STRING_INTERN(show);
CSS_DOM_STRING_INTERN(size);
@@ -742,9 +784,11 @@ nserror corestrings_init(void)
CSS_DOM_STRING_INTERN(target);
CSS_DOM_STRING_INTERN(text);
CSS_DOM_STRING_INTERN(timeupdate);
+ CSS_DOM_STRING_INTERN(title);
CSS_DOM_STRING_INTERN(type);
CSS_DOM_STRING_INTERN(unload);
CSS_DOM_STRING_INTERN(valign);
+ CSS_DOM_STRING_INTERN(value);
CSS_DOM_STRING_INTERN(vlink);
CSS_DOM_STRING_INTERN(volumechange);
CSS_DOM_STRING_INTERN(vspace);
@@ -763,6 +807,7 @@ nserror corestrings_init(void)
CSS_DOM_STRING_INTERN(file);
CSS_DOM_STRING_INTERN(on);
/* DOM userdata keys, not really CSS */
+ CSS_DOM_STRING_INTERN(__ns_key_box_node_data);
CSS_DOM_STRING_INTERN(__ns_key_libcss_node_data);
CSS_DOM_STRING_INTERN(__ns_key_file_name_node_data);
CSS_DOM_STRING_INTERN(__ns_key_image_coords_node_data);
diff --git a/utils/corestrings.h b/utils/corestrings.h
index 90fef5a..411f9ce 100644
--- a/utils/corestrings.h
+++ b/utils/corestrings.h
@@ -122,6 +122,7 @@ struct dom_string;
/* dom_string strings */
extern struct dom_string *corestring_dom_a;
+extern struct dom_string *corestring_dom_alt;
extern struct dom_string *corestring_dom_abort;
extern struct dom_string *corestring_dom_afterprint;
extern struct dom_string *corestring_dom_align;
@@ -142,14 +143,18 @@ extern struct dom_string *corestring_dom_cellspacing;
extern struct dom_string *corestring_dom_change;
extern struct dom_string *corestring_dom_charset;
extern struct dom_string *corestring_dom_class;
+extern struct dom_string *corestring_dom_classid;
extern struct dom_string *corestring_dom_click;
extern struct dom_string *corestring_dom_close;
+extern struct dom_string *corestring_dom_codebase;
extern struct dom_string *corestring_dom_color;
extern struct dom_string *corestring_dom_cols;
+extern struct dom_string *corestring_dom_colspan;
extern struct dom_string *corestring_dom_content;
extern struct dom_string *corestring_dom_contextmenu;
extern struct dom_string *corestring_dom_coords;
extern struct dom_string *corestring_dom_cuechange;
+extern struct dom_string *corestring_dom_data;
extern struct dom_string *corestring_dom_dblclick;
extern struct dom_string *corestring_dom_defer;
extern struct dom_string *corestring_dom_DOMAttrModified;
@@ -168,6 +173,7 @@ extern struct dom_string *corestring_dom_emptied;
extern struct dom_string *corestring_dom_ended;
extern struct dom_string *corestring_dom_error;
extern struct dom_string *corestring_dom_focus;
+extern struct dom_string *corestring_dom_frameborder;
extern struct dom_string *corestring_dom_hashchange;
extern struct dom_string *corestring_dom_height;
extern struct dom_string *corestring_dom_href;
@@ -186,6 +192,8 @@ extern struct dom_string *corestring_dom_loadeddata;
extern struct dom_string *corestring_dom_loadedmetadata;
extern struct dom_string *corestring_dom_loadstart;
extern struct dom_string *corestring_dom_map;
+extern struct dom_string *corestring_dom_marginheight;
+extern struct dom_string *corestring_dom_marginwidth;
extern struct dom_string *corestring_dom_media;
extern struct dom_string *corestring_dom_message;
extern struct dom_string *corestring_dom_mousedown;
@@ -196,6 +204,7 @@ extern struct dom_string *corestring_dom_mouseup;
extern struct dom_string *corestring_dom_mousewheel;
extern struct dom_string *corestring_dom_name;
extern struct dom_string *corestring_dom_nohref;
+extern struct dom_string *corestring_dom_noresize;
extern struct dom_string *corestring_dom_offline;
extern struct dom_string *corestring_dom_online;
extern struct dom_string *corestring_dom_pagehide;
@@ -212,10 +221,13 @@ extern struct dom_string *corestring_dom_rel;
extern struct dom_string *corestring_dom_reset;
extern struct dom_string *corestring_dom_resize;
extern struct dom_string *corestring_dom_rows;
+extern struct dom_string *corestring_dom_rowspan;
extern struct dom_string *corestring_dom_scroll;
+extern struct dom_string *corestring_dom_scrolling;
extern struct dom_string *corestring_dom_seeked;
extern struct dom_string *corestring_dom_seeking;
extern struct dom_string *corestring_dom_select;
+extern struct dom_string *corestring_dom_selected;
extern struct dom_string *corestring_dom_shape;
extern struct dom_string *corestring_dom_show;
extern struct dom_string *corestring_dom_size;
@@ -230,9 +242,11 @@ extern struct dom_string *corestring_dom_target;
extern struct dom_string *corestring_dom_text;
extern struct dom_string *corestring_dom_text_javascript;
extern struct dom_string *corestring_dom_timeupdate;
+extern struct dom_string *corestring_dom_title;
extern struct dom_string *corestring_dom_type;
extern struct dom_string *corestring_dom_unload;
extern struct dom_string *corestring_dom_valign;
+extern struct dom_string *corestring_dom_value;
extern struct dom_string *corestring_dom_vlink;
extern struct dom_string *corestring_dom_volumechange;
extern struct dom_string *corestring_dom_vspace;
@@ -253,6 +267,7 @@ extern struct dom_string *corestring_dom_checkbox;
extern struct dom_string *corestring_dom_file;
extern struct dom_string *corestring_dom_on;
/* DOM userdata keys */
+extern struct dom_string *corestring_dom___ns_key_box_node_data;
extern struct dom_string *corestring_dom___ns_key_libcss_node_data;
extern struct dom_string *corestring_dom___ns_key_file_name_node_data;
extern struct dom_string *corestring_dom___ns_key_image_coords_node_data;
-----------------------------------------------------------------------
Summary of changes:
render/box.h | 2 -
render/box_construct.c | 204 ++++++++++--------------------------------------
render/html.c | 6 --
utils/corestrings.c | 45 +++++++++++
utils/corestrings.h | 15 ++++
5 files changed, 102 insertions(+), 170 deletions(-)
diff --git a/render/box.h b/render/box.h
index 878ebc8..e781a66 100644
--- a/render/box.h
+++ b/render/box.h
@@ -339,8 +339,6 @@ bool box_handle_scrollbars(struct content *c, struct box *box,
bool box_vscrollbar_present(const struct box *box);
bool box_hscrollbar_present(const struct box *box);
-nserror box_construct_init(void);
-void box_construct_fini(void);
nserror dom_to_box(struct dom_node *n, struct html_content *c,
box_construct_complete_cb cb);
diff --git a/render/box_construct.c b/render/box_construct.c
index 3d077e8..ce21b70 100644
--- a/render/box_construct.c
+++ b/render/box_construct.c
@@ -210,134 +210,13 @@ static const box_type box_map[] = {
BOX_NONE /*CSS_DISPLAY_NONE*/
};
-/** Key for box userdata on DOM elements (== '__ns_box') */
-static dom_string *kstr_box_key;
-static dom_string *kstr_title;
-static dom_string *kstr_id;
-static dom_string *kstr_colspan;
-static dom_string *kstr_rowspan;
-static dom_string *kstr_style;
-static dom_string *kstr_href;
-static dom_string *kstr_name;
-static dom_string *kstr_target;
-static dom_string *kstr_alt;
-static dom_string *kstr_src;
-static dom_string *kstr_codebase;
-static dom_string *kstr_classid;
-static dom_string *kstr_data;
-static dom_string *kstr_rows;
-static dom_string *kstr_cols;
-static dom_string *kstr_border;
-static dom_string *kstr_frameborder;
-static dom_string *kstr_bordercolor;
-static dom_string *kstr_noresize;
-static dom_string *kstr_scrolling;
-static dom_string *kstr_marginwidth;
-static dom_string *kstr_marginheight;
-static dom_string *kstr_type;
-static dom_string *kstr_value;
-static dom_string *kstr_selected;
-
-nserror box_construct_init(void)
-{
- dom_exception err;
-
- err = dom_string_create_interned((const uint8_t *) "__ns_box",
- SLEN("__ns_box"), &kstr_box_key);
- if (err != DOM_NO_ERR || kstr_box_key == NULL)
- goto error;
-
-#define BOX_CONSTRUCT_STRING_INTERN(NAME) \
- err = dom_string_create_interned((const uint8_t *)#NAME, \
- sizeof(#NAME) - 1, \
- &kstr_##NAME ); \
- if ((err != DOM_NO_ERR) || (kstr_##NAME == NULL)) \
- goto error
-
- BOX_CONSTRUCT_STRING_INTERN(title);
- BOX_CONSTRUCT_STRING_INTERN(id);
- BOX_CONSTRUCT_STRING_INTERN(colspan);
- BOX_CONSTRUCT_STRING_INTERN(rowspan);
- BOX_CONSTRUCT_STRING_INTERN(style);
- BOX_CONSTRUCT_STRING_INTERN(href);
- BOX_CONSTRUCT_STRING_INTERN(name);
- BOX_CONSTRUCT_STRING_INTERN(target);
- BOX_CONSTRUCT_STRING_INTERN(alt);
- BOX_CONSTRUCT_STRING_INTERN(src);
- BOX_CONSTRUCT_STRING_INTERN(codebase);
- BOX_CONSTRUCT_STRING_INTERN(classid);
- BOX_CONSTRUCT_STRING_INTERN(data);
- BOX_CONSTRUCT_STRING_INTERN(rows);
- BOX_CONSTRUCT_STRING_INTERN(cols);
- BOX_CONSTRUCT_STRING_INTERN(border);
- BOX_CONSTRUCT_STRING_INTERN(frameborder);
- BOX_CONSTRUCT_STRING_INTERN(bordercolor);
- BOX_CONSTRUCT_STRING_INTERN(noresize);
- BOX_CONSTRUCT_STRING_INTERN(scrolling);
- BOX_CONSTRUCT_STRING_INTERN(marginwidth);
- BOX_CONSTRUCT_STRING_INTERN(marginheight);
- BOX_CONSTRUCT_STRING_INTERN(type);
- BOX_CONSTRUCT_STRING_INTERN(value);
- BOX_CONSTRUCT_STRING_INTERN(selected);
-
-#undef BOX_CONSTRUCT_STRING_INTERN
-
- return NSERROR_OK;
-
-error:
- return NSERROR_NOMEM;
-}
-
-void box_construct_fini(void)
-{
- if (kstr_box_key != NULL) {
- dom_string_unref(kstr_box_key);
- kstr_box_key = NULL;
- }
-
-#define BOX_CONSTRUCT_STRING_UNREF(NAME) \
- do { \
- if (kstr_##NAME != NULL) { \
- dom_string_unref(kstr_##NAME); \
- kstr_##NAME = NULL; \
- } \
- } while (0) \
-
- BOX_CONSTRUCT_STRING_UNREF(title);
- BOX_CONSTRUCT_STRING_UNREF(id);
- BOX_CONSTRUCT_STRING_UNREF(colspan);
- BOX_CONSTRUCT_STRING_UNREF(rowspan);
- BOX_CONSTRUCT_STRING_UNREF(style);
- BOX_CONSTRUCT_STRING_UNREF(href);
- BOX_CONSTRUCT_STRING_UNREF(name);
- BOX_CONSTRUCT_STRING_UNREF(target);
- BOX_CONSTRUCT_STRING_UNREF(alt);
- BOX_CONSTRUCT_STRING_UNREF(src);
- BOX_CONSTRUCT_STRING_UNREF(codebase);
- BOX_CONSTRUCT_STRING_UNREF(classid);
- BOX_CONSTRUCT_STRING_UNREF(data);
- BOX_CONSTRUCT_STRING_UNREF(rows);
- BOX_CONSTRUCT_STRING_UNREF(cols);
- BOX_CONSTRUCT_STRING_UNREF(border);
- BOX_CONSTRUCT_STRING_UNREF(frameborder);
- BOX_CONSTRUCT_STRING_UNREF(bordercolor);
- BOX_CONSTRUCT_STRING_UNREF(noresize);
- BOX_CONSTRUCT_STRING_UNREF(scrolling);
- BOX_CONSTRUCT_STRING_UNREF(marginwidth);
- BOX_CONSTRUCT_STRING_UNREF(marginheight);
- BOX_CONSTRUCT_STRING_UNREF(type);
- BOX_CONSTRUCT_STRING_UNREF(value);
- BOX_CONSTRUCT_STRING_UNREF(selected);
-
-#undef BOX_CONSTRUCT_DOM_STRING_UNREF
-}
-
static inline struct box *box_for_node(dom_node *n)
{
struct box *box = NULL;
dom_exception err;
- err = dom_node_get_user_data(n, kstr_box_key, (void *) &box);
+ err = dom_node_get_user_data(n, corestring_dom___ns_key_box_node_data,
+ (void *) &box);
if (err != DOM_NO_ERR)
return NULL;
@@ -859,7 +738,7 @@ bool box_construct_element(struct box_construct_ctx *ctx,
return false;
/* Extract title attribute, if present */
- err = dom_element_get_attribute(ctx->n, kstr_title, &title0);
+ err = dom_element_get_attribute(ctx->n, corestring_dom_title, &title0);
if (err != DOM_NO_ERR)
return false;
@@ -880,7 +759,7 @@ bool box_construct_element(struct box_construct_ctx *ctx,
}
/* Extract id attribute, if present */
- err = dom_element_get_attribute(ctx->n, kstr_id, &s);
+ err = dom_element_get_attribute(ctx->n, corestring_dom_id, &s);
if (err != DOM_NO_ERR)
return false;
@@ -903,7 +782,7 @@ bool box_construct_element(struct box_construct_ctx *ctx,
ctx->root_box = box;
/* Deal with colspan/rowspan */
- err = dom_element_get_attribute(ctx->n, kstr_colspan, &s);
+ err = dom_element_get_attribute(ctx->n, corestring_dom_colspan, &s);
if (err != DOM_NO_ERR)
return false;
@@ -916,7 +795,7 @@ bool box_construct_element(struct box_construct_ctx *ctx,
dom_string_unref(s);
}
- err = dom_element_get_attribute(ctx->n, kstr_rowspan, &s);
+ err = dom_element_get_attribute(ctx->n, corestring_dom_rowspan, &s);
if (err != DOM_NO_ERR)
return false;
@@ -1000,7 +879,8 @@ bool box_construct_element(struct box_construct_ctx *ctx,
}
/* Attach DOM node to box */
- err = dom_node_set_user_data(ctx->n, kstr_box_key, box, NULL,
+ err = dom_node_set_user_data(ctx->n,
+ corestring_dom___ns_key_box_node_data, box, NULL,
(void *) &old_box);
if (err != DOM_NO_ERR)
return false;
@@ -1433,7 +1313,7 @@ css_select_results *box_get_style(html_content *c,
nscss_select_ctx ctx;
/* Firstly, construct inline stylesheet, if any */
- err = dom_element_get_attribute(n, kstr_style, &s);
+ err = dom_element_get_attribute(n, corestring_dom_style, &s);
if (err != DOM_NO_ERR)
return NULL;
@@ -1575,7 +1455,7 @@ bool box_a(BOX_SPECIAL_PARAMS)
dom_string *s;
dom_exception err;
- err = dom_element_get_attribute(n, kstr_href, &s);
+ err = dom_element_get_attribute(n, corestring_dom_href, &s);
if (err == DOM_NO_ERR && s != NULL) {
ok = box_extract_link(dom_string_data(s),
content->base_url, &url);
@@ -1590,7 +1470,7 @@ bool box_a(BOX_SPECIAL_PARAMS)
}
/* name and id share the same namespace */
- err = dom_element_get_attribute(n, kstr_name, &s);
+ err = dom_element_get_attribute(n, corestring_dom_name, &s);
if (err == DOM_NO_ERR && s != NULL) {
lwc_string *lwc_name;
@@ -1609,7 +1489,7 @@ bool box_a(BOX_SPECIAL_PARAMS)
}
/* target frame [16.3] */
- err = dom_element_get_attribute(n, kstr_target, &s);
+ err = dom_element_get_attribute(n, corestring_dom_target, &s);
if (err == DOM_NO_ERR && s != NULL) {
if (dom_string_caseless_lwc_isequal(s,
corestring_lwc__blank))
@@ -1663,7 +1543,7 @@ bool box_image(BOX_SPECIAL_PARAMS)
return true;
/* handle alt text */
- err = dom_element_get_attribute(n, kstr_alt, &s);
+ err = dom_element_get_attribute(n, corestring_dom_alt, &s);
if (err == DOM_NO_ERR && s != NULL) {
char *alt = squash_whitespace(dom_string_data(s));
dom_string_unref(s);
@@ -1687,7 +1567,7 @@ bool box_image(BOX_SPECIAL_PARAMS)
box->usemap++;
/* get image URL */
- err = dom_element_get_attribute(n, kstr_src, &s);
+ err = dom_element_get_attribute(n, corestring_dom_src, &s);
if (err != DOM_NO_ERR || s == NULL)
return true;
@@ -1790,7 +1670,7 @@ bool box_object(BOX_SPECIAL_PARAMS)
/* codebase, classid, and data are URLs
* (codebase is the base for the other two) */
- err = dom_element_get_attribute(n, kstr_codebase, &codebase);
+ err = dom_element_get_attribute(n, corestring_dom_codebase, &codebase);
if (err == DOM_NO_ERR && codebase != NULL) {
if (box_extract_link(dom_string_data(codebase),
content->base_url,
@@ -1803,7 +1683,7 @@ bool box_object(BOX_SPECIAL_PARAMS)
if (params->codebase == NULL)
params->codebase = nsurl_ref(content->base_url);
- err = dom_element_get_attribute(n, kstr_classid, &classid);
+ err = dom_element_get_attribute(n, corestring_dom_classid, &classid);
if (err == DOM_NO_ERR && classid != NULL) {
if (box_extract_link(dom_string_data(classid), params->codebase,
¶ms->classid) == false) {
@@ -1813,7 +1693,7 @@ bool box_object(BOX_SPECIAL_PARAMS)
dom_string_unref(classid);
}
- err = dom_element_get_attribute(n, kstr_data, &data);
+ err = dom_element_get_attribute(n, corestring_dom_data, &data);
if (err == DOM_NO_ERR && data != NULL) {
if (box_extract_link(dom_string_data(data), params->codebase,
¶ms->data) == false) {
@@ -2052,7 +1932,7 @@ bool box_create_frameset(struct content_html_frames *f, dom_node *n,
colour default_border_colour = 0x000000;
/* parse rows and columns */
- err = dom_element_get_attribute(n, kstr_rows, &s);
+ err = dom_element_get_attribute(n, corestring_dom_rows, &s);
if (err == DOM_NO_ERR && s != NULL) {
row_height = box_parse_multi_lengths(dom_string_data(s), &rows);
dom_string_unref(s);
@@ -2066,7 +1946,7 @@ bool box_create_frameset(struct content_html_frames *f, dom_node *n,
row_height->unit = FRAME_DIMENSION_PERCENT;
}
- err = dom_element_get_attribute(n, kstr_cols, &s);
+ err = dom_element_get_attribute(n, corestring_dom_cols, &s);
if (err == DOM_NO_ERR && s != NULL) {
col_width = box_parse_multi_lengths(dom_string_data(s), &cols);
dom_string_unref(s);
@@ -2085,7 +1965,7 @@ bool box_create_frameset(struct content_html_frames *f, dom_node *n,
}
/* common extension: border="0|1" to control all children */
- err = dom_element_get_attribute(n, kstr_border, &s);
+ err = dom_element_get_attribute(n, corestring_dom_border, &s);
if (err == DOM_NO_ERR && s != NULL) {
if ((dom_string_data(s)[0] == '0') &&
(dom_string_data(s)[1] == '\0'))
@@ -2094,7 +1974,7 @@ bool box_create_frameset(struct content_html_frames *f, dom_node *n,
}
/* common extension: frameborder="yes|no" to control all children */
- err = dom_element_get_attribute(n, kstr_frameborder, &s);
+ err = dom_element_get_attribute(n, corestring_dom_frameborder, &s);
if (err == DOM_NO_ERR && s != NULL) {
if (dom_string_caseless_lwc_isequal(s,
corestring_lwc_no) == 0)
@@ -2104,7 +1984,7 @@ bool box_create_frameset(struct content_html_frames *f, dom_node *n,
/* common extension: bordercolor="#RRGGBB|<named colour>" to control
*all children */
- err = dom_element_get_attribute(n, kstr_bordercolor, &s);
+ err = dom_element_get_attribute(n, corestring_dom_bordercolor, &s);
if (err == DOM_NO_ERR && s != NULL) {
css_color color;
@@ -2233,7 +2113,7 @@ bool box_create_frameset(struct content_html_frames *f, dom_node *n,
/* get frame URL (not required) */
url = NULL;
- err = dom_element_get_attribute(c, kstr_src, &s);
+ err = dom_element_get_attribute(c, corestring_dom_src, &s);
if (err == DOM_NO_ERR && s != NULL) {
box_extract_link(dom_string_data(s),
content->base_url, &url);
@@ -2250,17 +2130,17 @@ bool box_create_frameset(struct content_html_frames *f, dom_node *n,
}
/* fill in specified values */
- err = dom_element_get_attribute(c, kstr_name, &s);
+ err = dom_element_get_attribute(c, corestring_dom_name, &s);
if (err == DOM_NO_ERR && s != NULL) {
frame->name = talloc_strdup(content->bctx,
dom_string_data(s));
dom_string_unref(s);
}
- dom_element_has_attribute(c, kstr_noresize,
+ dom_element_has_attribute(c, corestring_dom_noresize,
&frame->no_resize);
- err = dom_element_get_attribute(c, kstr_frameborder,
+ err = dom_element_get_attribute(c, corestring_dom_frameborder,
&s);
if (err == DOM_NO_ERR && s != NULL) {
i = atoi(dom_string_data(s));
@@ -2268,7 +2148,7 @@ bool box_create_frameset(struct content_html_frames *f, dom_node *n,
dom_string_unref(s);
}
- err = dom_element_get_attribute(c, kstr_scrolling, &s);
+ err = dom_element_get_attribute(c, corestring_dom_scrolling, &s);
if (err == DOM_NO_ERR && s != NULL) {
if (dom_string_caseless_lwc_isequal(s,
corestring_lwc_yes))
@@ -2279,21 +2159,21 @@ bool box_create_frameset(struct content_html_frames *f, dom_node *n,
dom_string_unref(s);
}
- err = dom_element_get_attribute(c, kstr_marginwidth,
+ err = dom_element_get_attribute(c, corestring_dom_marginwidth,
&s);
if (err == DOM_NO_ERR && s != NULL) {
frame->margin_width = atoi(dom_string_data(s));
dom_string_unref(s);
}
- err = dom_element_get_attribute(c, kstr_marginheight,
+ err = dom_element_get_attribute(c, corestring_dom_marginheight,
&s);
if (err == DOM_NO_ERR && s != NULL) {
frame->margin_height = atoi(dom_string_data(s));
dom_string_unref(s);
}
- err = dom_element_get_attribute(c, kstr_bordercolor,
+ err = dom_element_get_attribute(c, corestring_dom_bordercolor,
&s);
if (err == DOM_NO_ERR && s != NULL) {
css_color color;
@@ -2363,7 +2243,7 @@ bool box_iframe(BOX_SPECIAL_PARAMS)
return true;
/* get frame URL */
- err = dom_element_get_attribute(n, kstr_src, &s);
+ err = dom_element_get_attribute(n, corestring_dom_src, &s);
if (err != DOM_NO_ERR || s == NULL)
return true;
if (box_extract_link(dom_string_data(s), content->base_url,
@@ -2403,20 +2283,20 @@ bool box_iframe(BOX_SPECIAL_PARAMS)
content->iframe = iframe;
/* fill in specified values */
- err = dom_element_get_attribute(n, kstr_name, &s);
+ err = dom_element_get_attribute(n, corestring_dom_name, &s);
if (err == DOM_NO_ERR && s != NULL) {
iframe->name = talloc_strdup(content->bctx, dom_string_data(s));
dom_string_unref(s);
}
- err = dom_element_get_attribute(n, kstr_frameborder, &s);
+ err = dom_element_get_attribute(n, corestring_dom_frameborder, &s);
if (err == DOM_NO_ERR && s != NULL) {
i = atoi(dom_string_data(s));
iframe->border = (i != 0);
dom_string_unref(s);
}
- err = dom_element_get_attribute(n, kstr_bordercolor, &s);
+ err = dom_element_get_attribute(n, corestring_dom_bordercolor, &s);
if (err == DOM_NO_ERR && s != NULL) {
css_color color;
@@ -2426,7 +2306,7 @@ bool box_iframe(BOX_SPECIAL_PARAMS)
dom_string_unref(s);
}
- err = dom_element_get_attribute(n, kstr_scrolling, &s);
+ err = dom_element_get_attribute(n, corestring_dom_scrolling, &s);
if (err == DOM_NO_ERR && s != NULL) {
if (dom_string_caseless_lwc_isequal(s,
corestring_lwc_yes))
@@ -2437,13 +2317,13 @@ bool box_iframe(BOX_SPECIAL_PARAMS)
dom_string_unref(s);
}
- err = dom_element_get_attribute(n, kstr_marginwidth, &s);
+ err = dom_element_get_attribute(n, corestring_dom_marginwidth, &s);
if (err == DOM_NO_ERR && s != NULL) {
iframe->margin_width = atoi(dom_string_data(s));
dom_string_unref(s);
}
- err = dom_element_get_attribute(n, kstr_marginheight, &s);
+ err = dom_element_get_attribute(n, corestring_dom_marginheight, &s);
if (err == DOM_NO_ERR && s != NULL) {
iframe->margin_height = atoi(dom_string_data(s));
dom_string_unref(s);
@@ -2504,7 +2384,7 @@ bool box_input(BOX_SPECIAL_PARAMS)
nsurl *url;
nserror error;
- dom_element_get_attribute(n, kstr_type, &type);
+ dom_element_get_attribute(n, corestring_dom_type, &type);
gadget = html_forms_get_control_for_node(content->forms, n);
if (gadget == NULL)
@@ -2589,7 +2469,7 @@ bool box_input(BOX_SPECIAL_PARAMS)
nsoption_bool(foreground_images) == true) {
dom_string *s;
- err = dom_element_get_attribute(n, kstr_src, &s);
+ err = dom_element_get_attribute(n, corestring_dom_src, &s);
if (err == DOM_NO_ERR && s != NULL) {
error = nsurl_join(content->base_url,
dom_string_data(s), &url);
@@ -2837,7 +2717,7 @@ bool box_select_add_option(struct form_control *control, dom_node *n)
if (text == NULL)
goto no_memory;
- err = dom_element_get_attribute(n, kstr_value, &s);
+ err = dom_element_get_attribute(n, corestring_dom_value, &s);
if (err == DOM_NO_ERR && s != NULL) {
value = strdup(dom_string_data(s));
dom_string_unref(s);
@@ -2848,7 +2728,7 @@ bool box_select_add_option(struct form_control *control, dom_node *n)
if (value == NULL)
goto no_memory;
- dom_element_has_attribute(n, kstr_selected, &selected);
+ dom_element_has_attribute(n, corestring_dom_selected, &selected);
/* replace spaces/TABs with hard spaces to prevent line wrapping */
text_nowrap = cnv_space2nbsp(text);
@@ -2924,7 +2804,7 @@ bool box_embed(BOX_SPECIAL_PARAMS)
params->params = NULL;
/* src is a URL */
- err = dom_element_get_attribute(n, kstr_src, &src);
+ err = dom_element_get_attribute(n, corestring_dom_src, &src);
if (err != DOM_NO_ERR || src == NULL)
return true;
if (box_extract_link(dom_string_data(src), content->base_url,
diff --git a/render/html.c b/render/html.c
index e10f1e9..0a7ab24 100644
--- a/render/html.c
+++ b/render/html.c
@@ -2180,8 +2180,6 @@ static content_type html_content_type(void)
static void html_fini(void)
{
- box_construct_fini();
-
html_css_fini();
}
@@ -2221,10 +2219,6 @@ nserror html_init(void)
if (error != NSERROR_OK)
goto error;
- error = box_construct_init();
- if (error != NSERROR_OK)
- goto error;
-
for (i = 0; i < NOF_ELEMENTS(html_types); i++) {
error = content_factory_register_handler(html_types[i],
&html_content_handler);
diff --git a/utils/corestrings.c b/utils/corestrings.c
index e60a75b..85bced5 100644
--- a/utils/corestrings.c
+++ b/utils/corestrings.c
@@ -116,6 +116,7 @@ lwc_string *corestring_lwc__top;
/* dom_string strings */
dom_string *corestring_dom_a;
+dom_string *corestring_dom_alt;
dom_string *corestring_dom_abort;
dom_string *corestring_dom_afterprint;
dom_string *corestring_dom_align;
@@ -136,14 +137,18 @@ dom_string *corestring_dom_cellspacing;
dom_string *corestring_dom_change;
dom_string *corestring_dom_charset;
dom_string *corestring_dom_class;
+dom_string *corestring_dom_classid;
dom_string *corestring_dom_click;
dom_string *corestring_dom_close;
+dom_string *corestring_dom_codebase;
dom_string *corestring_dom_color;
dom_string *corestring_dom_cols;
+dom_string *corestring_dom_colspan;
dom_string *corestring_dom_content;
dom_string *corestring_dom_contextmenu;
dom_string *corestring_dom_coords;
dom_string *corestring_dom_cuechange;
+dom_string *corestring_dom_data;
dom_string *corestring_dom_dblclick;
dom_string *corestring_dom_defer;
dom_string *corestring_dom_DOMAttrModified;
@@ -162,6 +167,7 @@ dom_string *corestring_dom_emptied;
dom_string *corestring_dom_ended;
dom_string *corestring_dom_error;
dom_string *corestring_dom_focus;
+dom_string *corestring_dom_frameborder;
dom_string *corestring_dom_hashchange;
dom_string *corestring_dom_height;
dom_string *corestring_dom_href;
@@ -180,6 +186,8 @@ dom_string *corestring_dom_loadeddata;
dom_string *corestring_dom_loadedmetadata;
dom_string *corestring_dom_loadstart;
dom_string *corestring_dom_map;
+dom_string *corestring_dom_marginheight;
+dom_string *corestring_dom_marginwidth;
dom_string *corestring_dom_media;
dom_string *corestring_dom_message;
dom_string *corestring_dom_mousedown;
@@ -190,6 +198,7 @@ dom_string *corestring_dom_mouseup;
dom_string *corestring_dom_mousewheel;
dom_string *corestring_dom_name;
dom_string *corestring_dom_nohref;
+dom_string *corestring_dom_noresize;
dom_string *corestring_dom_offline;
dom_string *corestring_dom_online;
dom_string *corestring_dom_pagehide;
@@ -206,10 +215,13 @@ dom_string *corestring_dom_rel;
dom_string *corestring_dom_reset;
dom_string *corestring_dom_resize;
dom_string *corestring_dom_rows;
+dom_string *corestring_dom_rowspan;
dom_string *corestring_dom_scroll;
+dom_string *corestring_dom_scrolling;
dom_string *corestring_dom_seeked;
dom_string *corestring_dom_seeking;
dom_string *corestring_dom_select;
+dom_string *corestring_dom_selected;
dom_string *corestring_dom_shape;
dom_string *corestring_dom_show;
dom_string *corestring_dom_size;
@@ -224,9 +236,11 @@ dom_string *corestring_dom_target;
dom_string *corestring_dom_text;
dom_string *corestring_dom_text_javascript;
dom_string *corestring_dom_timeupdate;
+dom_string *corestring_dom_title;
dom_string *corestring_dom_type;
dom_string *corestring_dom_unload;
dom_string *corestring_dom_valign;
+dom_string *corestring_dom_value;
dom_string *corestring_dom_vlink;
dom_string *corestring_dom_volumechange;
dom_string *corestring_dom_vspace;
@@ -242,6 +256,7 @@ dom_string *corestring_dom_radio;
dom_string *corestring_dom_checkbox;
dom_string *corestring_dom_file;
dom_string *corestring_dom_on;
+dom_string *corestring_dom___ns_key_box_node_data;
dom_string *corestring_dom___ns_key_libcss_node_data;
dom_string *corestring_dom___ns_key_file_name_node_data;
dom_string *corestring_dom___ns_key_image_coords_node_data;
@@ -361,6 +376,7 @@ void corestrings_fini(void)
CSS_DOM_STRING_UNREF(abort);
CSS_DOM_STRING_UNREF(afterprint);
CSS_DOM_STRING_UNREF(align);
+ CSS_DOM_STRING_UNREF(alt);
CSS_DOM_STRING_UNREF(area);
CSS_DOM_STRING_UNREF(async);
CSS_DOM_STRING_UNREF(background);
@@ -378,14 +394,18 @@ void corestrings_fini(void)
CSS_DOM_STRING_UNREF(change);
CSS_DOM_STRING_UNREF(charset);
CSS_DOM_STRING_UNREF(class);
+ CSS_DOM_STRING_UNREF(classid);
CSS_DOM_STRING_UNREF(click);
CSS_DOM_STRING_UNREF(close);
+ CSS_DOM_STRING_UNREF(codebase);
CSS_DOM_STRING_UNREF(color);
CSS_DOM_STRING_UNREF(cols);
+ CSS_DOM_STRING_UNREF(colspan);
CSS_DOM_STRING_UNREF(content);
CSS_DOM_STRING_UNREF(contextmenu);
CSS_DOM_STRING_UNREF(coords);
CSS_DOM_STRING_UNREF(cuechange);
+ CSS_DOM_STRING_UNREF(data);
CSS_DOM_STRING_UNREF(dblclick);
CSS_DOM_STRING_UNREF(defer);
CSS_DOM_STRING_UNREF(DOMAttrModified);
@@ -404,6 +424,7 @@ void corestrings_fini(void)
CSS_DOM_STRING_UNREF(ended);
CSS_DOM_STRING_UNREF(error);
CSS_DOM_STRING_UNREF(focus);
+ CSS_DOM_STRING_UNREF(frameborder);
CSS_DOM_STRING_UNREF(hashchange);
CSS_DOM_STRING_UNREF(height);
CSS_DOM_STRING_UNREF(href);
@@ -422,6 +443,8 @@ void corestrings_fini(void)
CSS_DOM_STRING_UNREF(loadedmetadata);
CSS_DOM_STRING_UNREF(loadstart);
CSS_DOM_STRING_UNREF(map);
+ CSS_DOM_STRING_UNREF(marginheight);
+ CSS_DOM_STRING_UNREF(marginwidth);
CSS_DOM_STRING_UNREF(media);
CSS_DOM_STRING_UNREF(message);
CSS_DOM_STRING_UNREF(mousedown);
@@ -432,6 +455,7 @@ void corestrings_fini(void)
CSS_DOM_STRING_UNREF(mousewheel);
CSS_DOM_STRING_UNREF(name);
CSS_DOM_STRING_UNREF(nohref);
+ CSS_DOM_STRING_UNREF(noresize);
CSS_DOM_STRING_UNREF(offline);
CSS_DOM_STRING_UNREF(online);
CSS_DOM_STRING_UNREF(pagehide);
@@ -448,10 +472,13 @@ void corestrings_fini(void)
CSS_DOM_STRING_UNREF(reset);
CSS_DOM_STRING_UNREF(resize);
CSS_DOM_STRING_UNREF(rows);
+ CSS_DOM_STRING_UNREF(rowspan);
CSS_DOM_STRING_UNREF(scroll);
+ CSS_DOM_STRING_UNREF(scrolling);
CSS_DOM_STRING_UNREF(seeked);
CSS_DOM_STRING_UNREF(seeking);
CSS_DOM_STRING_UNREF(select);
+ CSS_DOM_STRING_UNREF(selected);
CSS_DOM_STRING_UNREF(shape);
CSS_DOM_STRING_UNREF(show);
CSS_DOM_STRING_UNREF(size);
@@ -466,9 +493,11 @@ void corestrings_fini(void)
CSS_DOM_STRING_UNREF(text);
CSS_DOM_STRING_UNREF(text_javascript);
CSS_DOM_STRING_UNREF(timeupdate);
+ CSS_DOM_STRING_UNREF(title);
CSS_DOM_STRING_UNREF(type);
CSS_DOM_STRING_UNREF(unload);
CSS_DOM_STRING_UNREF(valign);
+ CSS_DOM_STRING_UNREF(value);
CSS_DOM_STRING_UNREF(vlink);
CSS_DOM_STRING_UNREF(volumechange);
CSS_DOM_STRING_UNREF(vspace);
@@ -487,6 +516,7 @@ void corestrings_fini(void)
CSS_DOM_STRING_UNREF(file);
CSS_DOM_STRING_UNREF(on);
/* DOM userdata keys, not really CSS */
+ CSS_DOM_STRING_UNREF(__ns_key_box_node_data);
CSS_DOM_STRING_UNREF(__ns_key_libcss_node_data);
CSS_DOM_STRING_UNREF(__ns_key_file_name_node_data);
CSS_DOM_STRING_UNREF(__ns_key_image_coords_node_data);
@@ -638,6 +668,7 @@ nserror corestrings_init(void)
CSS_DOM_STRING_INTERN(abort);
CSS_DOM_STRING_INTERN(afterprint);
CSS_DOM_STRING_INTERN(align);
+ CSS_DOM_STRING_INTERN(alt);
CSS_DOM_STRING_INTERN(area);
CSS_DOM_STRING_INTERN(async);
CSS_DOM_STRING_INTERN(background);
@@ -655,14 +686,18 @@ nserror corestrings_init(void)
CSS_DOM_STRING_INTERN(change);
CSS_DOM_STRING_INTERN(charset);
CSS_DOM_STRING_INTERN(class);
+ CSS_DOM_STRING_INTERN(classid);
CSS_DOM_STRING_INTERN(click);
CSS_DOM_STRING_INTERN(close);
+ CSS_DOM_STRING_INTERN(codebase);
CSS_DOM_STRING_INTERN(color);
CSS_DOM_STRING_INTERN(cols);
+ CSS_DOM_STRING_INTERN(colspan);
CSS_DOM_STRING_INTERN(content);
CSS_DOM_STRING_INTERN(contextmenu);
CSS_DOM_STRING_INTERN(coords);
CSS_DOM_STRING_INTERN(cuechange);
+ CSS_DOM_STRING_INTERN(data);
CSS_DOM_STRING_INTERN(dblclick);
CSS_DOM_STRING_INTERN(defer);
CSS_DOM_STRING_INTERN(DOMAttrModified);
@@ -681,6 +716,7 @@ nserror corestrings_init(void)
CSS_DOM_STRING_INTERN(ended);
CSS_DOM_STRING_INTERN(error);
CSS_DOM_STRING_INTERN(focus);
+ CSS_DOM_STRING_INTERN(frameborder);
CSS_DOM_STRING_INTERN(hashchange);
CSS_DOM_STRING_INTERN(height);
CSS_DOM_STRING_INTERN(href);
@@ -699,6 +735,8 @@ nserror corestrings_init(void)
CSS_DOM_STRING_INTERN(loadedmetadata);
CSS_DOM_STRING_INTERN(loadstart);
CSS_DOM_STRING_INTERN(map);
+ CSS_DOM_STRING_INTERN(marginheight);
+ CSS_DOM_STRING_INTERN(marginwidth);
CSS_DOM_STRING_INTERN(media);
CSS_DOM_STRING_INTERN(message);
CSS_DOM_STRING_INTERN(mousedown);
@@ -709,6 +747,7 @@ nserror corestrings_init(void)
CSS_DOM_STRING_INTERN(mousewheel);
CSS_DOM_STRING_INTERN(name);
CSS_DOM_STRING_INTERN(nohref);
+ CSS_DOM_STRING_INTERN(noresize);
CSS_DOM_STRING_INTERN(offline);
CSS_DOM_STRING_INTERN(online);
CSS_DOM_STRING_INTERN(pagehide);
@@ -725,10 +764,13 @@ nserror corestrings_init(void)
CSS_DOM_STRING_INTERN(reset);
CSS_DOM_STRING_INTERN(resize);
CSS_DOM_STRING_INTERN(rows);
+ CSS_DOM_STRING_INTERN(rowspan);
CSS_DOM_STRING_INTERN(scroll);
+ CSS_DOM_STRING_INTERN(scrolling);
CSS_DOM_STRING_INTERN(seeked);
CSS_DOM_STRING_INTERN(seeking);
CSS_DOM_STRING_INTERN(select);
+ CSS_DOM_STRING_INTERN(selected);
CSS_DOM_STRING_INTERN(shape);
CSS_DOM_STRING_INTERN(show);
CSS_DOM_STRING_INTERN(size);
@@ -742,9 +784,11 @@ nserror corestrings_init(void)
CSS_DOM_STRING_INTERN(target);
CSS_DOM_STRING_INTERN(text);
CSS_DOM_STRING_INTERN(timeupdate);
+ CSS_DOM_STRING_INTERN(title);
CSS_DOM_STRING_INTERN(type);
CSS_DOM_STRING_INTERN(unload);
CSS_DOM_STRING_INTERN(valign);
+ CSS_DOM_STRING_INTERN(value);
CSS_DOM_STRING_INTERN(vlink);
CSS_DOM_STRING_INTERN(volumechange);
CSS_DOM_STRING_INTERN(vspace);
@@ -763,6 +807,7 @@ nserror corestrings_init(void)
CSS_DOM_STRING_INTERN(file);
CSS_DOM_STRING_INTERN(on);
/* DOM userdata keys, not really CSS */
+ CSS_DOM_STRING_INTERN(__ns_key_box_node_data);
CSS_DOM_STRING_INTERN(__ns_key_libcss_node_data);
CSS_DOM_STRING_INTERN(__ns_key_file_name_node_data);
CSS_DOM_STRING_INTERN(__ns_key_image_coords_node_data);
diff --git a/utils/corestrings.h b/utils/corestrings.h
index 90fef5a..411f9ce 100644
--- a/utils/corestrings.h
+++ b/utils/corestrings.h
@@ -122,6 +122,7 @@ struct dom_string;
/* dom_string strings */
extern struct dom_string *corestring_dom_a;
+extern struct dom_string *corestring_dom_alt;
extern struct dom_string *corestring_dom_abort;
extern struct dom_string *corestring_dom_afterprint;
extern struct dom_string *corestring_dom_align;
@@ -142,14 +143,18 @@ extern struct dom_string *corestring_dom_cellspacing;
extern struct dom_string *corestring_dom_change;
extern struct dom_string *corestring_dom_charset;
extern struct dom_string *corestring_dom_class;
+extern struct dom_string *corestring_dom_classid;
extern struct dom_string *corestring_dom_click;
extern struct dom_string *corestring_dom_close;
+extern struct dom_string *corestring_dom_codebase;
extern struct dom_string *corestring_dom_color;
extern struct dom_string *corestring_dom_cols;
+extern struct dom_string *corestring_dom_colspan;
extern struct dom_string *corestring_dom_content;
extern struct dom_string *corestring_dom_contextmenu;
extern struct dom_string *corestring_dom_coords;
extern struct dom_string *corestring_dom_cuechange;
+extern struct dom_string *corestring_dom_data;
extern struct dom_string *corestring_dom_dblclick;
extern struct dom_string *corestring_dom_defer;
extern struct dom_string *corestring_dom_DOMAttrModified;
@@ -168,6 +173,7 @@ extern struct dom_string *corestring_dom_emptied;
extern struct dom_string *corestring_dom_ended;
extern struct dom_string *corestring_dom_error;
extern struct dom_string *corestring_dom_focus;
+extern struct dom_string *corestring_dom_frameborder;
extern struct dom_string *corestring_dom_hashchange;
extern struct dom_string *corestring_dom_height;
extern struct dom_string *corestring_dom_href;
@@ -186,6 +192,8 @@ extern struct dom_string *corestring_dom_loadeddata;
extern struct dom_string *corestring_dom_loadedmetadata;
extern struct dom_string *corestring_dom_loadstart;
extern struct dom_string *corestring_dom_map;
+extern struct dom_string *corestring_dom_marginheight;
+extern struct dom_string *corestring_dom_marginwidth;
extern struct dom_string *corestring_dom_media;
extern struct dom_string *corestring_dom_message;
extern struct dom_string *corestring_dom_mousedown;
@@ -196,6 +204,7 @@ extern struct dom_string *corestring_dom_mouseup;
extern struct dom_string *corestring_dom_mousewheel;
extern struct dom_string *corestring_dom_name;
extern struct dom_string *corestring_dom_nohref;
+extern struct dom_string *corestring_dom_noresize;
extern struct dom_string *corestring_dom_offline;
extern struct dom_string *corestring_dom_online;
extern struct dom_string *corestring_dom_pagehide;
@@ -212,10 +221,13 @@ extern struct dom_string *corestring_dom_rel;
extern struct dom_string *corestring_dom_reset;
extern struct dom_string *corestring_dom_resize;
extern struct dom_string *corestring_dom_rows;
+extern struct dom_string *corestring_dom_rowspan;
extern struct dom_string *corestring_dom_scroll;
+extern struct dom_string *corestring_dom_scrolling;
extern struct dom_string *corestring_dom_seeked;
extern struct dom_string *corestring_dom_seeking;
extern struct dom_string *corestring_dom_select;
+extern struct dom_string *corestring_dom_selected;
extern struct dom_string *corestring_dom_shape;
extern struct dom_string *corestring_dom_show;
extern struct dom_string *corestring_dom_size;
@@ -230,9 +242,11 @@ extern struct dom_string *corestring_dom_target;
extern struct dom_string *corestring_dom_text;
extern struct dom_string *corestring_dom_text_javascript;
extern struct dom_string *corestring_dom_timeupdate;
+extern struct dom_string *corestring_dom_title;
extern struct dom_string *corestring_dom_type;
extern struct dom_string *corestring_dom_unload;
extern struct dom_string *corestring_dom_valign;
+extern struct dom_string *corestring_dom_value;
extern struct dom_string *corestring_dom_vlink;
extern struct dom_string *corestring_dom_volumechange;
extern struct dom_string *corestring_dom_vspace;
@@ -253,6 +267,7 @@ extern struct dom_string *corestring_dom_checkbox;
extern struct dom_string *corestring_dom_file;
extern struct dom_string *corestring_dom_on;
/* DOM userdata keys */
+extern struct dom_string *corestring_dom___ns_key_box_node_data;
extern struct dom_string *corestring_dom___ns_key_libcss_node_data;
extern struct dom_string *corestring_dom___ns_key_file_name_node_data;
extern struct dom_string *corestring_dom___ns_key_image_coords_node_data;
--
NetSurf Browser
9 years
netsurf: branch master updated. release/3.0-984-g20e7899
by NetSurf Browser Project
Gitweb links:
...log http://git.netsurf-browser.org/netsurf.git/shortlog/20e789955dc3d1e720193...
...commit http://git.netsurf-browser.org/netsurf.git/commit/20e789955dc3d1e72019371...
...tree http://git.netsurf-browser.org/netsurf.git/tree/20e789955dc3d1e7201937133...
The branch, master has been updated
via 20e789955dc3d1e720193713306b44e1ffec0516 (commit)
from f07a04126d66331bb36afba7997f61a59c56208b (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commitdiff http://git.netsurf-browser.org/netsurf.git/commit/?id=20e789955dc3d1e7201...
commit 20e789955dc3d1e720193713306b44e1ffec0516
Author: Michael Drake <tlsa(a)netsurf-browser.org>
Commit: Michael Drake <tlsa(a)netsurf-browser.org>
Ensure first option gets selected when the markup doesn't specify any options as selected.
diff --git a/render/box_construct.c b/render/box_construct.c
index 4d97969..3d077e8 100644
--- a/render/box_construct.c
+++ b/render/box_construct.c
@@ -2780,6 +2780,8 @@ bool box_select(BOX_SPECIAL_PARAMS)
gadget->data.select.current->initial_selected =
gadget->data.select.current->selected = true;
gadget->data.select.num_selected = 1;
+ dom_html_option_element_set_selected(
+ gadget->data.select.current->node, true);
}
if (gadget->data.select.num_selected == 0)
-----------------------------------------------------------------------
Summary of changes:
render/box_construct.c | 2 ++
1 files changed, 2 insertions(+), 0 deletions(-)
diff --git a/render/box_construct.c b/render/box_construct.c
index 4d97969..3d077e8 100644
--- a/render/box_construct.c
+++ b/render/box_construct.c
@@ -2780,6 +2780,8 @@ bool box_select(BOX_SPECIAL_PARAMS)
gadget->data.select.current->initial_selected =
gadget->data.select.current->selected = true;
gadget->data.select.num_selected = 1;
+ dom_html_option_element_set_selected(
+ gadget->data.select.current->node, true);
}
if (gadget->data.select.num_selected == 0)
--
NetSurf Browser
9 years