Closed Bug 36872 Opened 24 years ago Closed 24 years ago

Compatibility mode testing should be reviewed

Categories

(Core :: DOM: HTML Parser, defect, P3)

defect

Tracking

()

VERIFIED FIXED

People

(Reporter: emk, Assigned: rickg)

References

()

Details

Attachments

(3 files)

The mode testing code such as "mode != eParseMode_noquirks" is broken now since 
new eParseMode_strict is erroneously treated as quirks.
They should be changed to "mode == eParseMode_quirks" or "mode != 
eParseMode_strict".
It is case-by-case which change is better.
Similarly, "mode == eParseMode_noquirks" should be changed to "mode != 
eParseMode_quirks" or "mode == eParseMode_strict".
Do you know of a specific problem, or this is just "being careful"?
Attached file quirks mode testcase
Attached file strict mode testcase
Currently, only (nonexistent) "HTML 6.0" (or later) DOCTYPES are handled in 
noquirks, so I couldn't attach a noquirks testcase.
HTML 4.0 (Strict) is handled in strict, but comments are parsed as if it is 
handled in quirks.
Here is all noquirks/strict problems I found:
http://www3.airnet.ne.jp/emk/moz/doctypes.cgi
*** Bug 36995 has been marked as a duplicate of this bug. ***
Blocks: 36022
Fixed in my tree, awaiting chance to land.
Status: NEW → ASSIGNED
Fixed in my tree.
Fixed by changing _noquirks to _strict.
Fixed by changing _noquirks to _strict.
Status: ASSIGNED → RESOLVED
Closed: 24 years ago
Verified using 2000050408 nightly build on Windows 2000.
Status: RESOLVED → VERIFIED
Reopening.  My understanding was that the difference between noquirks and strict
was only in the parser.  Therefore the tests should have been changed from
== noquirks    to    != quirks
!= noquirks    to    == quirks

The current code looks very wrong.
Status: VERIFIED → REOPENED
Um, I don't think so. David if you have a particular concern, raise it. But the 
code was changed to reflect quirks vs. strict, and no_quirks has been removed.
Status: REOPENED → RESOLVED
Closed: 24 years ago24 years ago
Resolution: --- → FIXED
David: in order to fix a regression on bug 18817, I just checked in the 
following change per suggestion of VYV03354@nifty.ne.jp.

/layout/html/document/src/nsHTMLContentSink.cpp, line 3715:
    if (eDTDMode_noquirks== mode) {
should be:
    if (eDTDMode_strict == mode) {

In that case at least, the fix is correct. I don't think that 
changing "==noquirks" to "!=quirks" everywhere is the right thing to do.
updated qa contact.
QA Contact: janc → bsharma
Verified on 2001-07-19-branch on WinNT

The attached test cases loads fine.
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: