about summary refs log tree commit diff
path: root/src/librustdoc
diff options
context:
space:
mode:
authorMichael Howell <michael@notriddle.com>2024-04-18 22:20:08 -0700
committerMichael Howell <michael@notriddle.com>2024-04-18 22:21:29 -0700
commit2e7d9e9acbdb48620e347529796bf1e35fd97c19 (patch)
tree7928486119f5808e3c917d89f8ac1e4385f9222e /src/librustdoc
parentfa0068b5412baecc932772dda72c0621bfa7ab00 (diff)
downloadrust-2e7d9e9acbdb48620e347529796bf1e35fd97c19.tar.gz
rust-2e7d9e9acbdb48620e347529796bf1e35fd97c19.zip
rustdoc-search: fix description on aliases in results
This needs to start downloading the descriptions after aliases
have been added to the result set.
Diffstat (limited to 'src/librustdoc')
-rw-r--r--src/librustdoc/html/static/js/search.js21
1 files changed, 11 insertions, 10 deletions
diff --git a/src/librustdoc/html/static/js/search.js b/src/librustdoc/html/static/js/search.js
index 0a43e9765e2..41a9897de6d 100644
--- a/src/librustdoc/html/static/js/search.js
+++ b/src/librustdoc/html/static/js/search.js
@@ -1464,16 +1464,7 @@ function initSearch(rawSearchIndex) {
                 return 0;
             });
 
-            const transformed = transformResults(result_list);
-            const descs = await Promise.all(transformed.map(result => {
-                return searchIndexEmptyDesc.get(result.crate).contains(result.bitIndex) ?
-                    "" :
-                    searchState.loadDesc(result);
-            }));
-            for (const [i, result] of transformed.entries()) {
-                result.desc = descs[i];
-            }
-            return transformed;
+            return transformResults(result_list);
         }
 
         /**
@@ -2517,6 +2508,16 @@ function initSearch(rawSearchIndex) {
             sorted_others,
             parsedQuery);
         handleAliases(ret, parsedQuery.original.replace(/"/g, ""), filterCrates, currentCrate);
+        await Promise.all([ret.others, ret.returned, ret.in_args].map(async list => {
+            const descs = await Promise.all(list.map(result => {
+                return searchIndexEmptyDesc.get(result.crate).contains(result.bitIndex) ?
+                    "" :
+                    searchState.loadDesc(result);
+            }));
+            for (const [i, result] of list.entries()) {
+                result.desc = descs[i];
+            }
+        }));
         if (parsedQuery.error !== null && ret.others.length !== 0) {
             // It means some doc aliases were found so let's "remove" the error!
             ret.query.error = null;