summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDimitri van Heesch <dimitri@stack.nl>2013-05-30 20:13:37 (GMT)
committerDimitri van Heesch <dimitri@stack.nl>2013-05-30 20:13:37 (GMT)
commit8295d3ffb8c112972fb13c2911b8a15e45498b6c (patch)
tree9a2eb0e2bf87afdcdc165909106658c0f27454b8
parent1e7e76afce339b779c7c44bf3640b277586c1a5e (diff)
downloadDoxygen-8295d3ffb8c112972fb13c2911b8a15e45498b6c.zip
Doxygen-8295d3ffb8c112972fb13c2911b8a15e45498b6c.tar.gz
Doxygen-8295d3ffb8c112972fb13c2911b8a15e45498b6c.tar.bz2
Bug 700646 - XML output does not handle HTML entities in titles
-rw-r--r--src/latexdocvisitor.cpp6
-rw-r--r--src/xmldocvisitor.cpp2
-rw-r--r--src/xmlgen.cpp8
3 files changed, 9 insertions, 7 deletions
diff --git a/src/latexdocvisitor.cpp b/src/latexdocvisitor.cpp
index 0a96530..25f8c46 100644
--- a/src/latexdocvisitor.cpp
+++ b/src/latexdocvisitor.cpp
@@ -142,9 +142,9 @@ void LatexDocVisitor::visit(DocSymbol *s)
case DocSymbol::DoubleColon: m_t << "::"; break;
case DocSymbol::Percent: m_t << "\\%"; break;
case DocSymbol::Pipe: m_t << "$|$"; break;
- case DocSymbol::Copy: m_t << "\\copyright"; break;
- case DocSymbol::Tm: m_t << "\\texttrademark"; break;
- case DocSymbol::Reg: m_t << "\\textregistered"; break;
+ case DocSymbol::Copy: m_t << "\\copyright{}"; break;
+ case DocSymbol::Tm: m_t << "\\texttrademark{}"; break;
+ case DocSymbol::Reg: m_t << "\\textregistered{}"; break;
case DocSymbol::Apos: m_t << "'"; break;
case DocSymbol::Quot: m_t << "\""; break;
case DocSymbol::Lsquo: m_t << "`"; break;
diff --git a/src/xmldocvisitor.cpp b/src/xmldocvisitor.cpp
index 5bae376..add18e3 100644
--- a/src/xmldocvisitor.cpp
+++ b/src/xmldocvisitor.cpp
@@ -587,7 +587,7 @@ void XmlDocVisitor::visitPre(DocSection *s)
if (!s->anchor().isEmpty()) m_t << "_1" << s->anchor();
m_t << "\">" << endl;
m_t << "<title>";
- filter(s->title());
+ filter(convertCharEntitiesToUTF8(s->title()));
m_t << "</title>" << endl;
}
diff --git a/src/xmlgen.cpp b/src/xmlgen.cpp
index b1bfc9c..f189831 100644
--- a/src/xmlgen.cpp
+++ b/src/xmlgen.cpp
@@ -1838,20 +1838,22 @@ static void generateXMLForPage(PageDef *pd,FTextStream &ti,bool isExample)
QCString title;
if (!pd->title().isEmpty() && pd->title().lower()!="notitle")
{
- title = filterTitle(Doxygen::mainPage->title());
+ title = filterTitle(convertCharEntitiesToUTF8(Doxygen::mainPage->title()));
}
else
{
title = Config_getString("PROJECT_NAME");
}
- t << " <title>" << convertToXML(title) << "</title>" << endl;
+ t << " <title>" << convertToXML(convertCharEntitiesToUTF8(title))
+ << "</title>" << endl;
}
else
{
SectionInfo *si = Doxygen::sectionDict->find(pd->name());
if (si)
{
- t << " <title>" << convertToXML(si->title) << "</title>" << endl;
+ t << " <title>" << convertToXML(convertCharEntitiesToUTF8(si->title))
+ << "</title>" << endl;
}
}
writeInnerPages(pd->getSubPages(),t);