diff options
author | Topi Reinio <topi.reinio@qt.io> | 2021-10-15 16:33:41 +0200 |
---|---|---|
committer | Topi Reinio <topi.reinio@qt.io> | 2022-03-15 14:57:30 +0100 |
commit | 55fe27c4455eb54830bb08f19e34d8f2f137ad2f (patch) | |
tree | 2072b55ea93e1a3a2669727824fdf4c401e41e44 | |
parent | 53e0ac017ade09238ab72664086baec6282beec9 (diff) | |
download | qttools-55fe27c4455eb54830bb08f19e34d8f2f137ad2f.tar.gz |
qdoc: Fix assert on empty link target
Fixes: QTBUG-97562
Change-Id: I9e2b2b3979f9c0ca22f23a1a5fef5296b2a34a00
Done-with: Luca Di Sera <luca.disera@qt.io>
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
3 files changed, 13 insertions, 2 deletions
diff --git a/src/qdoc/xmlgenerator.cpp b/src/qdoc/xmlgenerator.cpp index 647904af5..f5c0809f3 100644 --- a/src/qdoc/xmlgenerator.cpp +++ b/src/qdoc/xmlgenerator.cpp @@ -378,6 +378,10 @@ QString XmlGenerator::linkForNode(const Node *node, const Node *relative) QString XmlGenerator::getLink(const Atom *atom, const Node *relative, const Node **node) { const QString &t = atom->string(); + + if (t.isEmpty()) + return t; + if (t.at(0) == QChar('h')) { if (t.startsWith("http:") || t.startsWith("https:")) return t; diff --git a/tests/auto/qdoc/generatedoutput/testdata/configs/test.qdocconf b/tests/auto/qdoc/generatedoutput/testdata/configs/test.qdocconf index e4cef822e..3844c2acf 100644 --- a/tests/auto/qdoc/generatedoutput/testdata/configs/test.qdocconf +++ b/tests/auto/qdoc/generatedoutput/testdata/configs/test.qdocconf @@ -7,6 +7,6 @@ sources = ../outputfromqdocfiles/qdoctests-outputfromqdocfiles.qdoc macro.beginqdoc = "\\c {/*!}" macro.endqdoc = "\\c */" -# zero warning tolerance -warninglimit = 0 +# allow (qdoc) warning: Can't link to '' +warninglimit = 1 warninglimit.enabled = true diff --git a/tests/auto/qdoc/generatedoutput/testdata/outputfromqdocfiles/qdoctests-outputfromqdocfiles.qdoc b/tests/auto/qdoc/generatedoutput/testdata/outputfromqdocfiles/qdoctests-outputfromqdocfiles.qdoc index e56c447c4..b0f4f16d6 100644 --- a/tests/auto/qdoc/generatedoutput/testdata/outputfromqdocfiles/qdoctests-outputfromqdocfiles.qdoc +++ b/tests/auto/qdoc/generatedoutput/testdata/outputfromqdocfiles/qdoctests-outputfromqdocfiles.qdoc @@ -81,3 +81,10 @@ titles, targets defined with \\target or \\keyword commands, and API reference keywords (types, methods, namespaces, and so on). */ + +// Empty link target that was known to assert +/*! + \page crash.html + + \l {} +*/ |