summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/tools/qdoc/ditaxmlgenerator.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/tools/qdoc/ditaxmlgenerator.cpp b/src/tools/qdoc/ditaxmlgenerator.cpp
index c448f0e413..70f63f706a 100644
--- a/src/tools/qdoc/ditaxmlgenerator.cpp
+++ b/src/tools/qdoc/ditaxmlgenerator.cpp
@@ -2414,16 +2414,28 @@ void DitaXmlGenerator::writeRelatedLinks(const FakeNode* node, CodeMarker* marke
if (node->links().contains(Node::PreviousLink)) {
linkPair = node->links()[Node::PreviousLink];
linkNode = findNodeForTarget(linkPair.first, node, marker);
+ if (linkNode->type() == Node::Fake) {
+ const FakeNode *fakeNode = static_cast<const FakeNode*>(linkNode);
+ linkPair.second = fakeNode->title();
+ }
writeLink(linkNode, linkPair.second, "previous");
}
if (node->links().contains(Node::NextLink)) {
linkPair = node->links()[Node::NextLink];
linkNode = findNodeForTarget(linkPair.first, node, marker);
+ if (linkNode->type() == Node::Fake) {
+ const FakeNode *fakeNode = static_cast<const FakeNode*>(linkNode);
+ linkPair.second = fakeNode->title();
+ }
writeLink(linkNode, linkPair.second, "next");
}
if (node->links().contains(Node::StartLink)) {
linkPair = node->links()[Node::StartLink];
linkNode = findNodeForTarget(linkPair.first, node, marker);
+ if (linkNode->type() == Node::Fake) {
+ const FakeNode *fakeNode = static_cast<const FakeNode*>(linkNode);
+ linkPair.second = fakeNode->title();
+ }
writeLink(linkNode, linkPair.second, "parent");
}
writeEndTag(); // </related-links>