diff --git a/src/librustdoc/html/markdown.rs b/src/librustdoc/html/markdown.rs
index 6f4665db6f1..050ba60318e 100644
--- a/src/librustdoc/html/markdown.rs
+++ b/src/librustdoc/html/markdown.rs
@@ -261,7 +261,9 @@ impl<'a, I: Iterator- >> Iterator for CodeBlocks<'_, 'a, I> {
\
",
added_classes = added_classes.join(" "),
- text = Escape(&original_text),
+ text = Escape(
+ original_text.strip_suffix('\n').unwrap_or(&original_text)
+ ),
)
.into(),
));
diff --git a/src/librustdoc/html/markdown/tests.rs b/src/librustdoc/html/markdown/tests.rs
index e490099a92e..3ec60c0efd2 100644
--- a/src/librustdoc/html/markdown/tests.rs
+++ b/src/librustdoc/html/markdown/tests.rs
@@ -524,15 +524,13 @@ fn test_ascii_with_prepending_hashtag() {
####.###..#....#....#..#.
#..#.#....#....#....#..#.
#..#.#....#....#....#..#.
-#..#.####.####.####..##..
-",
+#..#.####.####.####..##..",
);
t(
r#"```markdown
# hello
```"#,
"",
+# hello",
);
}