Skip to content

Commit 62e9e46

Browse files
authored
Rollup merge of rust-lang#122410 - rjeli:rustdoc-no-local-font-preload, r=notriddle
rustdoc: do not preload fonts when browsing locally First PR, please let me know if I'm doing anything wrong. As noted in rust-lang#98769, currently `cargo doc --open` on macOS/Safari (17.2.1) doesn't load fonts due to a CORS issue. (webkit issue [here](https://bugs.webkit.org/show_bug.cgi?id=249887)). This patch moves the font preloads inside a js if statement as suggested in the GitHub issue. I tried something more elegant with iterating over a tera array of fonts, but ran into issues, so here's the dumb fix. Only thing to note is that the font path is interpolated into a template string, so HTML escaping works fine, but it will break if there's a backtick or `${` in the font path. Not sure if this is a big deal.
2 parents 1ffa5de + f3b348b commit 62e9e46

File tree

1 file changed

+2
-0
lines changed

1 file changed

+2
-0
lines changed

src/librustdoc/html/templates/page.html

+2
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,13 @@
66
<meta name="generator" content="rustdoc"> {# #}
77
<meta name="description" content="{{page.description}}"> {# #}
88
<title>{{page.title}}</title> {# #}
9+
<script> if (window.location.protocol !== "file:") document.write(` {# Hack to skip preloading fonts locally - see #98769 #}
910
<link rel="preload" as="font" type="font/woff2" crossorigin href="{{static_root_path|safe}}{{files.source_serif_4_regular}}"> {# #}
1011
<link rel="preload" as="font" type="font/woff2" crossorigin href="{{static_root_path|safe}}{{files.fira_sans_regular}}"> {# #}
1112
<link rel="preload" as="font" type="font/woff2" crossorigin href="{{static_root_path|safe}}{{files.fira_sans_medium}}"> {# #}
1213
<link rel="preload" as="font" type="font/woff2" crossorigin href="{{static_root_path|safe}}{{files.source_code_pro_regular}}"> {# #}
1314
<link rel="preload" as="font" type="font/woff2" crossorigin href="{{static_root_path|safe}}{{files.source_code_pro_semibold}}"> {# #}
15+
`)</script> {# #}
1416
<link rel="stylesheet" {#+ #}
1517
href="{{static_root_path|safe}}{{files.normalize_css}}"> {# #}
1618
<link rel="stylesheet" {#+ #}

0 commit comments

Comments
 (0)