diff --git a/lib/OpenLayers/Layer/ArcIMS.js b/lib/OpenLayers/Layer/ArcIMS.js index ddbb37d383..eb7dbc983c 100644 --- a/lib/OpenLayers/Layer/ArcIMS.js +++ b/lib/OpenLayers/Layer/ArcIMS.js @@ -206,8 +206,9 @@ OpenLayers.Layer.ArcIMS = OpenLayers.Class(OpenLayers.Layer.Grid, { * bounds - {} A bounds representing the bbox for the * request. * callback - {Function} Function to call when image url is retrieved. + * scope - {Object} The scope of the callback method. */ - getURLasync: function(bounds, callback) { + getURLasync: function(bounds, callback, scope) { bounds = this.adjustBounds(bounds); // create an arcxml request to generate the image @@ -236,7 +237,7 @@ OpenLayers.Layer.ArcIMS = OpenLayers.Class(OpenLayers.Layer.Grid, { var axlResp = new OpenLayers.Format.ArcXML(); var arcxml = axlResp.read(doc); - callback(this.getUrlOrImage(arcxml.image.output)); + callback.call(scope, this.getUrlOrImage(arcxml.image.output)); }, scope: this }); diff --git a/lib/OpenLayers/Tile/Image.js b/lib/OpenLayers/Tile/Image.js index a24242ba95..23a7c9668a 100644 --- a/lib/OpenLayers/Tile/Image.js +++ b/lib/OpenLayers/Tile/Image.js @@ -170,12 +170,12 @@ OpenLayers.Tile.Image = OpenLayers.Class(OpenLayers.Tile, { // Asynchronous image requests call the asynchronous getURL method // on the layer to fetch an image that covers 'this.bounds'. var id = this.asyncRequestId = (this.asyncRequestId || 0) + 1; - this.layer.getURLasync(this.bounds, OpenLayers.Function.bind(function(url) { + this.layer.getURLasync(this.bounds, function(url) { if (id == this.asyncRequestId) { this.url = url; this.initImage(); } - }, this)); + }, this); } else { // synchronous image requests get the url immediately. this.url = this.layer.getURL(this.bounds);