diff --git a/Source/cmDocumentationFormatterDocbook.cxx b/Source/cmDocumentationFormatterDocbook.cxx
index 47ea5120d..51b93ae9d 100644
--- a/Source/cmDocumentationFormatterDocbook.cxx
+++ b/Source/cmDocumentationFormatterDocbook.cxx
@@ -96,28 +96,24 @@ void cmDocumentationPrintDocbookEscapes(std::ostream& os, const char* text)
}
}
-
+//----------------------------------------------------------------------------
cmDocumentationFormatterDocbook::cmDocumentationFormatterDocbook()
:cmDocumentationFormatter()
{
}
+//----------------------------------------------------------------------------
void cmDocumentationFormatterDocbook
::PrintSection(std::ostream& os,
const cmDocumentationSection §ion,
const char* name)
{
- if(name)
- {
- os << "PrintId(os, 0, name);
- os << "\">\n" << name << "\n";
- }
+ os << "PrintId(os, 0, name);
+ os << "\">\n" << name << "\n";
std::string prefix = this->ComputeSectionLinkPrefix(name);
-
- const std::vector &entries =
- section.GetEntries();
+ const std::vector &entries = section.GetEntries();
for(std::vector::const_iterator op = entries.begin();
op != entries.end(); ++op)
@@ -147,32 +143,36 @@ void cmDocumentationFormatterDocbook
this->PrintFormatted(os, op->Brief.c_str());
}
}
- if(name)
+
+ // empty sections are not allowed in docbook.
+ if(entries.empty())
{
- os << "\n";
+ os << "\n";
}
-}
-void cmDocumentationFormatterDocbook::PrintPreformatted(std::ostream& os,
- const char* text)
-{
- os << "";
- cmDocumentationPrintDocbookEscapes(os, text);
- os << "\n ";
-}
-
-void cmDocumentationFormatterDocbook::PrintParagraph(std::ostream& os,
- const char* text)
-{
- os << "";
- cmDocumentationPrintDocbookEscapes(os, text);
- os << "";
+ os << "\n";
}
//----------------------------------------------------------------------------
-void cmDocumentationFormatterDocbook::PrintHeader(const char* docname,
- const char* appname,
- std::ostream& os)
+void cmDocumentationFormatterDocbook
+::PrintPreformatted(std::ostream& os, const char* text)
+{
+ os << "";
+ cmDocumentationPrintDocbookEscapes(os, text);
+ os << "\n";
+}
+
+void cmDocumentationFormatterDocbook
+::PrintParagraph(std::ostream& os, const char* text)
+{
+ os << "";
+ cmDocumentationPrintDocbookEscapes(os, text);
+ os << "\n";
+}
+
+//----------------------------------------------------------------------------
+void cmDocumentationFormatterDocbook
+::PrintHeader(const char* docname, const char* appname, std::ostream& os)
{
this->docname = docname;
@@ -182,8 +182,8 @@ void cmDocumentationFormatterDocbook::PrintHeader(const char* docname,
this->EmittedLinkIds.clear();
os << "\n"
- "\n"
" ]>\n"
"\n"