- From: Ville Skytta via cvs-syncmail <cvsmail@w3.org>
- Date: Sun, 18 Jan 2009 17:26:06 +0000
- To: www-validator-cvs@w3.org
Update of /sources/public/validator/httpd/cgi-bin
In directory hutz:/tmp/cvs-serv21768
Modified Files:
check
Log Message:
Support HTML5 "DOCTYPE legacy string", detect HTML5 to HTML5 doctype (non-)override.
Index: check
===================================================================
RCS file: /sources/public/validator/httpd/cgi-bin/check,v
retrieving revision 1.637
retrieving revision 1.638
diff -u -d -r1.637 -r1.638
--- check 7 Jan 2009 22:19:30 -0000 1.637
+++ check 18 Jan 2009 17:26:04 -0000 1.638
@@ -1779,7 +1779,13 @@
$seen_doctype = TRUE;
$org_dtd = &ent($text);
- ($File->{Root}, $File->{DOCTYPE}) = $text =~ m(<!DOCTYPE\s+(\w[\w\.-]+)\s+(?:PUBLIC|SYSTEM)\s+(?:[\'\"])([^\"\']+)(?:[\"\']).*>)si;
+ ($File->{Root}, undef, $File->{DOCTYPE}) = $text =~
+ /<!DOCTYPE\s+(\w[\w\.-]+)(?:\s+(?:PUBLIC|SYSTEM)\s+(['"])(.*?)\2)?\s*>/si;
+
+ $File->{DOCTYPE} = 'HTML5'
+ if (lc($File->{Root} || '') eq 'html' &&
+ (!defined($File->{DOCTYPE}) || $File->{DOCTYPE} eq 'XSLT-compat'));
+
# No Override if Fallback was requested, or if override is the same as detected
my $known = $CFG->{Types}->{$File->{DOCTYPE}};
if ($File->{Opt}->{FB}->{DOCTYPE} or
@@ -2098,7 +2104,7 @@
my $declaration = shift;
my $doctype_type;
my $doctype_secondpart;
- if ($declaration =~ m(<!DOCTYPE\s+HTML\s*>)si) {
+ if ($declaration =~ /<!DOCTYPE\s+html(?:\s+PUBLIC\s+(['"])XSLT-compat\1)?\s*>/si) {
$File->{Root} = "html";
$File->{DOCTYPE} = "HTML5";
}
Received on Sunday, 18 January 2009 17:26:14 UTC