From 28e670f52da46819f8f18844a407bf9ad93043cd Mon Sep 17 00:00:00 2001 From: Daniel Silverstone Date: Mon, 6 Jan 2014 18:50:25 +0000 Subject: Support 'checked' properly in new form handler --- render/form.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'render') diff --git a/render/form.c b/render/form.c index 761fc4c69..49d6f217c 100644 --- a/render/form.c +++ b/render/form.c @@ -350,7 +350,7 @@ bool form_successful_controls_dom(struct form *_form, dom_exception err; dom_string *nodename = NULL, *inputname = NULL, *inputvalue = NULL, *inputtype = NULL; struct fetch_multipart_data sentinel, *last_success, *success_new; - bool had_submit = false, element_disabled; + bool had_submit = false, element_disabled, checked; char *charset, *rawfile_temp = NULL, *basename; uint32_t index, element_count; struct image_input_coords *coords; @@ -687,6 +687,15 @@ bool form_successful_controls_dom(struct form *_form, dom_string_caseless_isequal( inputtype, corestring_dom_checkbox)) { LOG(("Examining radio or checkbox")); + err = dom_html_input_element_get_checked( + (dom_html_input_element *)form_element, + &checked); + if (err != DOM_NO_ERR) { + LOG(("Could not get input element checked")); + goto dom_no_memory; + } + if (!checked) + continue; err = dom_html_input_element_get_value( (dom_html_input_element *)form_element, &inputvalue); -- cgit v1.2.3