diff --git a/src/com/android/email/Utility.java b/src/com/android/email/Utility.java index 3b5302e81..0e33ef3c6 100644 --- a/src/com/android/email/Utility.java +++ b/src/com/android/email/Utility.java @@ -83,20 +83,20 @@ public class Utility { } public static boolean domainFieldValid(EditText view) { - if (view.getText() != null) { - String s = view.getText().toString(); - if (s.matches("^([a-zA-Z0-9]([a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9])?\\.)+[a-zA-Z]{2,6}$")) { - return true; - } - if (s.matches("^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$")) { - return true; - } - if ((s.equalsIgnoreCase("localhost"))||(s.equalsIgnoreCase("localhost.localdomain"))) { - return true; - } - } - return false; - } + if (view.getText() != null) { + String s = view.getText().toString(); + if (s.matches("^([a-zA-Z0-9]([a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9])?\\.)+[a-zA-Z]{2,6}(\\/([a-zA-Z0-9\\-~])+)?$")) { + return true; + } + if (s.matches("^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$")) { + return true; + } + if ((s.equalsIgnoreCase("localhost"))||(s.equalsIgnoreCase("localhost.localdomain"))) { + return true; + } + } + return false; + } /** * Ensures that the given string starts and ends with the double quote character. The string is not modified in any way except to add the