diff --git a/includes/common.inc b/includes/common.inc
index 864acc9b2cd05d40190623107d3c04a724837cd9..581e1150c0856812f8fe77a85edca3b5b98450c5 100644
--- a/includes/common.inc
+++ b/includes/common.inc
@@ -2197,8 +2197,9 @@ function url($path = NULL, array $options = array()) {
  */
 function url_is_external($path) {
   $colonpos = strpos($path, ':');
-  // Only call the slow drupal_strip_dangerous_protocols() if $path contains a
-  // ':' before any / ? or #.
+  // Avoid calling drupal_strip_dangerous_protocols() if there is any
+  // slash (/), hash (#) or question_mark (?) before the colon (:)
+  // occurrence - if any - as this would clearly mean it is not a URL.
   return $colonpos !== FALSE && !preg_match('![/?#]!', substr($path, 0, $colonpos)) && drupal_strip_dangerous_protocols($path) == $path;
 }