diff --git a/ChangeLog b/ChangeLog index d67cde64..cb8f7a4d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +Tue Oct 17 18:12:34 CEST 2006 Daniel Veillard + + * HTMLparser.c: fixing HTML minimized attribute values to be generated + internally if not present, fixes bug #332124 + * result/HTML/doc2.htm.sax result/HTML/doc3.htm.sax + result/HTML/wired.html.sax: this affects the SAX event strem for + a few test cases + Tue Oct 17 17:56:31 CEST 2006 Daniel Veillard * HTMLparser.c: fixing HTML entities in attributes parsing bug #362552 diff --git a/HTMLparser.c b/HTMLparser.c index 590083c1..55557662 100644 --- a/HTMLparser.c +++ b/HTMLparser.c @@ -3235,12 +3235,11 @@ htmlParseAttribute(htmlParserCtxtPtr ctxt, xmlChar **value) { NEXT; SKIP_BLANKS; val = htmlParseAttValue(ctxt); - /****** - } else { - * TODO : some attribute must have values, some may not - if ((ctxt->sax != NULL) && (ctxt->sax->error != NULL)) - ctxt->sax->warning(ctxt->userData, - "No value for attribute %s\n", name); */ + } else if (htmlIsBooleanAttr(name)) { + /* + * assume a minimized attribute + */ + val = xmlStrdup(name); } *value = val; diff --git a/result/HTML/doc2.htm.sax b/result/HTML/doc2.htm.sax index 7cbbc510..f216ce35 100644 --- a/result/HTML/doc2.htm.sax +++ b/result/HTML/doc2.htm.sax @@ -38,12 +38,12 @@ SAX.startElement(meta, content='MSHTML 5.00.3103.1000', name='GENERATOR') SAX.endElement(meta) SAX.endElement(head) SAX.startElement(frameset, border='false', cols='172,*', frameborder='0', framespacing='0') -SAX.startElement(frame, marginheight='0', marginwidth='0', name='left', noresize, scrolling='no', src='doc2_files/side.htm', target='rtop') +SAX.startElement(frame, marginheight='0', marginwidth='0', name='left', noresize='noresize', scrolling='no', src='doc2_files/side.htm', target='rtop') SAX.endElement(frame) SAX.startElement(frameset, rows='43,*') -SAX.startElement(frame, marginheight='0', marginwidth='0', name='rtop', noresize, scrolling='no', src='doc2_files/top.htm', target='rbottom') +SAX.startElement(frame, marginheight='0', marginwidth='0', name='rtop', noresize='noresize', scrolling='no', src='doc2_files/top.htm', target='rbottom') SAX.endElement(frame) -SAX.startElement(frame, name='rbottom', noresize, src='doc2_files/contents.htm', target='_top') +SAX.startElement(frame, name='rbottom', noresize='noresize', src='doc2_files/contents.htm', target='_top') SAX.endElement(frame) SAX.endElement(frameset) SAX.startElement(noframes) diff --git a/result/HTML/doc3.htm.sax b/result/HTML/doc3.htm.sax index 2cc38fa7..7fda62c7 100644 --- a/result/HTML/doc3.htm.sax +++ b/result/HTML/doc3.htm.sax @@ -2589,7 +2589,7 @@ SAX.characters( , 14) SAX.endElement(font) SAX.startElement(center) -SAX.startElement(iframe, frameborder='0', height='60', marginheight='0', marginwidth='0', noresize, scrolling='no', src='doc3_files/ad_iframe.htm', width='468') +SAX.startElement(iframe, frameborder='0', height='60', marginheight='0', marginwidth='0', noresize='noresize', scrolling='no', src='doc3_files/ad_iframe.htm', width='468') SAX.startElement(a, href='http://ads.adflight.com/go_static.asp?asid=7708', target='_top') SAX.error: htmlParseEntityRef: expecting ';' SAX.error: htmlParseEntityRef: expecting ';' @@ -2754,7 +2754,7 @@ SAX.startElement(noscript) SAX.endElement(noscript) SAX.endElement(b) SAX.startElement(a, href='http://www.goto.com/d/search/ssn/?fromGIF=true', target='_blank') -SAX.startElement(img, align='bottom', border='0', height='90', ismap, src='doc3_files/100x90.gif', width='100') +SAX.startElement(img, align='bottom', border='0', height='90', ismap='ismap', src='doc3_files/100x90.gif', width='100') SAX.endElement(img) SAX.endElement(a) SAX.startElement(b) diff --git a/result/HTML/wired.html.sax b/result/HTML/wired.html.sax index 3860c76f..9d3e5f45 100644 --- a/result/HTML/wired.html.sax +++ b/result/HTML/wired.html.sax @@ -49,7 +49,7 @@ SAX.characters( SAX.startElement(select, name='state') SAX.characters( , 2) -SAX.startElement(option, value='WA', selected) +SAX.startElement(option, value='WA', selected='selected') SAX.characters(WA , 4) SAX.endElement(option) @@ -442,7 +442,7 @@ SAX.error: htmlParseEntityRef: expecting ';' SAX.error: htmlParseEntityRef: expecting ';' SAX.error: htmlParseEntityRef: expecting ';' SAX.error: htmlParseEntityRef: expecting ';' -SAX.startElement(option, value='http://search.hotwired.com/search97/s97.vts?Action=FilterSearch&Filter=docs_filter.hts&ResultTemplate=vignette.hts&Collection=vignette&QueryMode=Internet&Query=', selected) +SAX.startElement(option, value='http://search.hotwired.com/search97/s97.vts?Action=FilterSearch&Filter=docs_filter.hts&ResultTemplate=vignette.hts&Collection=vignette&QueryMode=Internet&Query=', selected='selected') SAX.characters(Wired News, 10) SAX.endElement(option) SAX.characters(