about summary refs log tree commit diff
diff options
context:
space:
mode:
authorkennytm <kennytm@gmail.com>2019-03-16 14:56:33 +0800
committerkennytm <kennytm@gmail.com>2019-03-16 22:39:39 +0800
commit76749844dad23817683e35fc5f064f5c1c5bcd12 (patch)
treedbf11e7216575d3e97669e51fb4b8d5c9f589edf
parentdb93c9b1798164ed9ac500a92b2741a601f2ca86 (diff)
parenta4ea08420cde12ea0943cafb1505e512c5820f70 (diff)
downloadrust-76749844dad23817683e35fc5f064f5c1c5bcd12.tar.gz
rust-76749844dad23817683e35fc5f064f5c1c5bcd12.zip
Rollup merge of #59037 - Manishearth:intra-doc-false, r=QuietMisdreavus
Avoid some common false positives in intra doc link checking

The empty string case is never going to be a link. The numeric case may be a link, but if it were it would have resolved locally. It's more likely the makeshift markdown footnote notation (`[0]`, etc)

r? @QuietMisdreavus
-rw-r--r--src/librustdoc/passes/collect_intra_doc_links.rs6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/librustdoc/passes/collect_intra_doc_links.rs b/src/librustdoc/passes/collect_intra_doc_links.rs
index fefff1f3a75..0f8e8894c04 100644
--- a/src/librustdoc/passes/collect_intra_doc_links.rs
+++ b/src/librustdoc/passes/collect_intra_doc_links.rs
@@ -288,6 +288,12 @@ impl<'a, 'tcx> DocFolder for LinkCollector<'a, 'tcx> {
             if ori_link.contains('/') {
                 continue;
             }
+
+            // [] is mostly likely not supposed to be a link
+            if ori_link.is_empty() {
+                continue;
+            }
+
             let link = ori_link.replace("`", "");
             let (def, fragment) = {
                 let mut kind = PathKind::Unknown;