mirror of
https://github.com/rkd77/elinks.git
synced 2025-01-03 14:57:44 -05:00
[ecmascript] Explicit init and done function for ecmascript module.
This commit is contained in:
parent
f617256ecc
commit
471fe54053
@ -108,7 +108,6 @@ read_url_list(void)
|
||||
int
|
||||
get_ecmascript_enable(struct ecmascript_interpreter *interpreter)
|
||||
{
|
||||
static int list_init = 0;
|
||||
struct string_list_item *item;
|
||||
unsigned char *url;
|
||||
|
||||
@ -118,11 +117,6 @@ get_ecmascript_enable(struct ecmascript_interpreter *interpreter)
|
||||
return 0;
|
||||
}
|
||||
|
||||
if (!list_init) {
|
||||
read_url_list();
|
||||
list_init = 1;
|
||||
}
|
||||
|
||||
url = get_uri_string(interpreter->vs->doc_view->document->uri, URI_PUBLIC);
|
||||
if (!url) {
|
||||
return 0;
|
||||
@ -446,6 +440,17 @@ ecmascript_set_timeout2(struct ecmascript_interpreter *interpreter, JS::HandleVa
|
||||
install_timer(&interpreter->vs->doc_view->document->timeout, timeout, ecmascript_timeout_handler2, interpreter);
|
||||
}
|
||||
|
||||
static void
|
||||
init_ecmascript_module(struct module *module)
|
||||
{
|
||||
read_url_list();
|
||||
}
|
||||
|
||||
static void
|
||||
done_ecmascript_module(struct module *module)
|
||||
{
|
||||
free_string_list(&allowed_urls);
|
||||
}
|
||||
|
||||
static struct module *ecmascript_modules[] = {
|
||||
#ifdef CONFIG_ECMASCRIPT_SMJS
|
||||
@ -455,12 +460,13 @@ static struct module *ecmascript_modules[] = {
|
||||
};
|
||||
|
||||
|
||||
|
||||
struct module ecmascript_module = struct_module(
|
||||
/* name: */ N_("ECMAScript"),
|
||||
/* options: */ ecmascript_options,
|
||||
/* events: */ NULL,
|
||||
/* submodules: */ ecmascript_modules,
|
||||
/* data: */ NULL,
|
||||
/* init: */ NULL,
|
||||
/* done: */ NULL
|
||||
/* init: */ init_ecmascript_module,
|
||||
/* done: */ done_ecmascript_module
|
||||
);
|
||||
|
Loading…
Reference in New Issue
Block a user