Commit f814da6f authored by Kevin Bracey's avatar Kevin Bracey
Browse files

Changed FORM handling to process HTMLLib tokens using new interface.

parent 3a8a230f
......@@ -543,7 +543,7 @@ _kernel_oserror * fetchpage_postprocess_uri(browser_data * b, char * uri, int re
/* the history list, else 0. */
/*************************************************/
_kernel_oserror * fetchpage_new(browser_data * b, char * url, int record)
_kernel_oserror * fetchpage_new(browser_data * b, const char * url, int record)
{
/* Don't proceed unless there's something to fetch */
......@@ -617,7 +617,7 @@ _kernel_oserror * fetchpage_new(browser_data * b, char * url, int record)
/* window, else 0. */
/*************************************************/
_kernel_oserror * fetchpage_new_add(browser_data * b, char * url, int record, char * add, int new_window)
_kernel_oserror * fetchpage_new_add(browser_data * b, const char * url, int record, char * add, int new_window)
{
/* Don't proceed unless there's something to fetch */
......@@ -683,7 +683,7 @@ _kernel_oserror * fetchpage_new_add(browser_data * b, char * url, int record, ch
/* the history list, else 0. */
/*************************************************/
_kernel_oserror * fetchpage_new_raw(browser_data * b, char * url, int record)
_kernel_oserror * fetchpage_new_raw(browser_data * b, const char * url, int record)
{
/* Don't proceed unless there's something to fetch */
......
......@@ -2865,14 +2865,14 @@ static _kernel_oserror * form_build_data(browser_data * b, HStream * token, int
tp = hp->token;
if ((tp->type & TYPE_GET) && tp->anchor)
if (HtmlFORMmethod(tp)==formmethod_GET && HtmlFORMaction(tp))
{
/* A GET form - put the URL in */
int i;
char * p;
i = form_extend_flex(data, strlen(tp->anchor) + 1);
i = form_extend_flex(data, strlen(HtmlFORMaction(tp)) + 1);
if (i < 0)
{
......@@ -2882,7 +2882,7 @@ static _kernel_oserror * form_build_data(browser_data * b, HStream * token, int
p = ((char *) *data) + i - 1;
strcpy(p, tp->anchor);
strcpy(p, HtmlFORMaction(tp));
additions_start = ((int) p) - ((int) *data) + strlen(p) + 1;
p = strchr(p, 0);
......@@ -3120,7 +3120,7 @@ static _kernel_oserror * form_submit_form(browser_data * b, HStream * token)
/* For GET forms, we must have a URL to submit to in the 'anchor' field */
if ((tp->type & TYPE_GET) && tp->anchor)
if (HtmlFORMmethod(tp) == formmethod_GET && HtmlFORMaction(tp))
{
e = form_build_data(b, token, 0, 0, &data); // 0, 0 need filling in for INPUT TYPE = IMAGE
if (!e) e = fetchpage_new(b, data, 1);
......@@ -3140,7 +3140,7 @@ static _kernel_oserror * form_submit_form(browser_data * b, HStream * token)
/* of the browser_data structure so that fetcher routines know to */
/* encode the data in the header, rather than the URL */
else if ((tp->type & TYPE_POST) && tp->anchor)
else if (HtmlFORMmethod(tp) == formmethod_POST && HtmlFORMaction(tp))
{
e = form_build_data(b, token, 0, 0, &b->extradata); // 0, 0 need filling in for INPUT TYPE = IMAGE
tp = hp->token;
......@@ -3159,7 +3159,7 @@ static _kernel_oserror * form_submit_form(browser_data * b, HStream * token)
b->extradata = NULL;
}
else e = fetchpage_new(b, tp->anchor, 1);
else e = fetchpage_new(b, HtmlFORMaction(tp), 1);
}
/* If the above fail, can't submit the form */
......
......@@ -27,9 +27,9 @@ int fetchpage_fetch (int eventcode, WimpPollBlock * b, I
_kernel_oserror * fetchpage_postprocess_uri (browser_data * b, char * uri, int record);
_kernel_oserror * fetchpage_new (browser_data * b, char * url, int record);
_kernel_oserror * fetchpage_new_add (browser_data * b, char * url, int record, char * add, int new_window);
_kernel_oserror * fetchpage_new_raw (browser_data * b, char * url, int record);
_kernel_oserror * fetchpage_new (browser_data * b, const char * url, int record);
_kernel_oserror * fetchpage_new_add (browser_data * b, const char * url, int record, char * add, int new_window);
_kernel_oserror * fetchpage_new_raw (browser_data * b, const char * url, int record);
void fetchpage_claim_nulls (browser_data * b);
void fetchpage_release_nulls (browser_data * b);
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment