summaryrefslogtreecommitdiff
path: root/coverage/html.py
diff options
context:
space:
mode:
Diffstat (limited to 'coverage/html.py')
-rw-r--r--coverage/html.py5
1 files changed, 5 insertions, 0 deletions
diff --git a/coverage/html.py b/coverage/html.py
index d34aeac7..6fc49ff5 100644
--- a/coverage/html.py
+++ b/coverage/html.py
@@ -132,8 +132,13 @@ class HtmlReporter(Reporter):
def escape(t):
"""HTML-escape the text in t."""
return (t
+ # Convert HTML special chars into HTML entities.
.replace("&", "&amp;").replace("<", "&lt;").replace(">", "&gt;")
.replace("'", "&#39;").replace('"', "&quot;")
+ # Convert runs of spaces: " " -> "&nbsp; &nbsp; &nbsp; "
+ .replace(" ", "&nbsp; ")
+ # To deal with odd-length runs, convert the final pair of spaces
+ # so that " " -> "&nbsp; &nbsp;&nbsp; "
.replace(" ", "&nbsp; ")
)