jquery ajax: Fixes #3045. The protocol wasn't being checked to see if a script is...
authorAriel Flesler <aflesler@gmail.com>
Tue, 17 Jun 2008 20:32:15 +0000 (20:32 +0000)
committerAriel Flesler <aflesler@gmail.com>
Tue, 17 Jun 2008 20:32:15 +0000 (20:32 +0000)
src/ajax.js

index dbe731b..42d0b28 100644 (file)
@@ -236,12 +236,13 @@ jQuery.extend({
                        jQuery.event.trigger( "ajaxStart" );
 
                // Matches an absolute URL, and saves the domain
-               var remote = /^(?:\w+:)?\/\/([^\/?#]+)/;
+               var parts = /^(\w+:)?\/\/([^\/?#]+)/.exec( s.url );
 
                // If we're requesting a remote document
                // and trying to load JSON or Script with a GET
-               if ( s.dataType == "script" && type == "GET"
-                               && remote.test(s.url) && remote.exec(s.url)[1] != location.host ){
+               if ( s.dataType == "script" && type == "GET" && parts
+                       && ( parts[1] && parts[1] != location.protocol || parts[2] != location.host )){
+
                        var head = document.getElementsByTagName("head")[0];
                        var script = document.createElement("script");
                        script.src = s.url;