Merge "Support mailto: references"
diff --git a/java/com/google/gitiles/doc/MarkdownToHtml.java b/java/com/google/gitiles/doc/MarkdownToHtml.java
index 8bcb919..ec10d47 100644
--- a/java/com/google/gitiles/doc/MarkdownToHtml.java
+++ b/java/com/google/gitiles/doc/MarkdownToHtml.java
@@ -394,7 +394,7 @@
@VisibleForTesting
String href(String target) {
- if (target.startsWith("#") || HtmlBuilder.isValidHttpUri(target)) {
+ if (target.startsWith("#") || HtmlBuilder.isValidHttpUri(target) || HtmlBuilder.isValidMailtoUri(target)) {
return target;
} else if (target.startsWith("git:")) {
if (HtmlBuilder.isValidGitUri(target)) {
diff --git a/java/com/google/gitiles/doc/html/HtmlBuilder.java b/java/com/google/gitiles/doc/html/HtmlBuilder.java
index 8235161..bf46bf1 100644
--- a/java/com/google/gitiles/doc/html/HtmlBuilder.java
+++ b/java/com/google/gitiles/doc/html/HtmlBuilder.java
@@ -105,6 +105,10 @@
&& URI.getValueFilter().matcher(val).find();
}
+ public static boolean isValidMailtoUri(String val) {
+ return val.startsWith("mailto:") && URI.getValueFilter().matcher(val).find();
+ }
+
/** Check if URL is valid for {@code <img src="data:image/*;base64,...">}. */
public static boolean isImageDataUri(String url) {
return IMAGE_DATA.getValueFilter().matcher(url).find();