Closed Bug 40452 Opened 24 years ago Closed 24 years ago

crud in navigator.dtd results in crash at startup

Categories

(Core Graveyard :: RDF, defect, P3)

DEC
OpenVMS
defect

Tracking

(Not tracked)

VERIFIED FIXED

People

(Reporter: colin, Assigned: waterson)

Details

(Keywords: crash)

If I have crud in my navigator.dtd file, then Mozilla crashes upon startup.

http://bugzilla.mozilla.org/show_bug.cgi?id=39703 has the details (look for the 
OpenVMS crash trace).

Here's the crud I had that caused the problem:

<!-- Statusbar -->
<<<<<<< navigator.dtd
<!ENTITY  statusText.label "Document: Done">
<!ENTITY  buildId.label "Build ID: 2000052009">
=======
<!ENTITY  statusText.label            "Document: Done">
<!ENTITY  buildId.label               "Build ID: 2000052009">
>>>>>>> 1.67

<!-- Context Menu -->

An error message about the invalid contents of the dtd file would be a whole lot 
nicer than a crash :-)
harishd, rickg: fyi, this may be how the problem was caused for bug 39703.
I checked in a lame fix: NS_IF_RELEASE() instead of NS_RELEASE() in 
nsXULContentSink::DidBuildModel(). Now we just *hang* when there's an error in 
the DTD file. The good news is, the parser *does* print an error message.
Status: NEW → RESOLVED
Closed: 24 years ago
Resolution: --- → FIXED
Well, it sort of prints an error message: "error in processing external entity 
reference, Source Line: %navigatorDTD". nisheeth, harishd, or rickg would be 
the guys to ask about improving that.
Remember there's a strong ( bad ) circular reference between sink and the 
parser. And therefore, it's a good ( not lame )idea to use NS_IF_RELEASE rather 
than NS_RELEASE. The circularity ought to be broken...I'll work on it post 
beta2.
Adding crash keyword
Keywords: crash
marking verified per engineers comments
Status: RESOLVED → VERIFIED
Product: Core → Core Graveyard
You need to log in before you can comment on or make changes to this bug.