Catalog DTDs not loaded properly when document URI is a non-hierarchical scheme
Categories
(Core :: XML, defect, P2)
Tracking
()
Tracking | Status | |
---|---|---|
firefox69 | --- | fixed |
People
(Reporter: bzbarsky, Assigned: bzbarsky)
References
(Blocks 1 open bug)
Details
Attachments
(1 file)
Simplest testcase I could create:
data:text/xml,<?xml version="1.0"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "DTD/xhtml1-strict.dtd"><root>Á</root>
That URL works fine in Chrome and in Safari, but in Firefox it fails with an "undefined entity" error. The reason it fails is that we land in nsExpatDriver::OpenInputStreamFromExternalDTD
with aBaseURL
set to the data:
URL and aURLStr
set to "DTD/xhtml1-strict.dtd"
. The NS_NewURI
call to create uri
fails, and we bail out without loading the DTD.
This bites about:
URLs as well, if they pass the about:
URL to the parser, which is where bug 1558693 came from.
Looking into sane ways of fixing this now; I think we should make it work.
![]() |
Assignee | |
Comment 1•6 years ago
|
||
![]() |
Assignee | |
Updated•6 years ago
|
Updated•6 years ago
|
Comment 2•6 years ago
|
||
With the load all XUL as XHTML patch and this patch applied, when I run ./mach test browser_addons_debug_info.js
I get:
###!!! ASSERTION: Null parameter.: 'aDTD', file /home/bdahl/projects/gecko/parser/htmlparser/nsExpatDriver.cpp, line 197
![]() |
Assignee | |
Comment 3•6 years ago
|
||
Oops, that assertion should be removed. I only tested in opt, clearly... ;)
Comment 5•6 years ago
|
||
bugherder |
Description
•