NS_ERROR("parser didn't catch unmatched tags?"); return NS_ERROR_UNEXPECTED;
char* tagStr = aNode.GetText().ToNewCString(); printf("extra close tag '</%s>' at line %d\n", tagStr, aNode.GetSourceLineNumber()); delete[] tagStr;   return NS_OK;
XULContentSinkImpl::CloseContainer(const nsIParserNode& aNode){    nsresult rv;#ifdef DEBUG    const nsString& text = aNode.GetText();#endif    if (mState == eXULContentSinkState_InScript) {        if (NS_FAILED(rv = CloseScript(aNode)))            return rv;    }    else {        FlushText();    }    nsIRDFResource* resource;    if (NS_FAILED(PopResourceAndState(resource, mState))) {        NS_ERROR("parser didn't catch unmatched tags?");        return NS_ERROR_UNEXPECTED; // XXX    }    PRInt32 nestLevel = mContextStack->Count();    if (nestLevel == 0)        mState = eXULContentSinkState_InEpilog;    PopNameSpaces();          NS_IF_RELEASE(resource);    return NS_OK;}