diff --git a/lib/OpenLayers/Strategy/Fixed.js b/lib/OpenLayers/Strategy/Fixed.js index 00bcfe74e6..e54e166fdc 100644 --- a/lib/OpenLayers/Strategy/Fixed.js +++ b/lib/OpenLayers/Strategy/Fixed.js @@ -87,13 +87,14 @@ OpenLayers.Strategy.Fixed = OpenLayers.Class(OpenLayers.Strategy, { * options - {Object} options to pass to protocol read. */ load: function(options) { - this.layer.events.triggerEvent("loadstart", {filter: this.layer.filter}); - this.layer.protocol.read(OpenLayers.Util.applyDefaults({ + var layer = this.layer; + layer.events.triggerEvent("loadstart", {filter: layer.filter}); + layer.protocol.read(OpenLayers.Util.applyDefaults({ callback: this.merge, - filter: this.layer.filter, + filter: layer.filter, scope: this }, options)); - this.layer.events.un({ + layer.events.un({ "visibilitychanged": this.load, scope: this }); @@ -110,7 +111,8 @@ OpenLayers.Strategy.Fixed = OpenLayers.Class(OpenLayers.Strategy, { * by the protocol. */ merge: function(resp) { - this.layer.destroyFeatures(); + var layer = this.layer; + layer.destroyFeatures(); if (resp.success()) { var features = resp.features; if (features && features.length > 0) { @@ -125,10 +127,10 @@ OpenLayers.Strategy.Fixed = OpenLayers.Class(OpenLayers.Strategy, { } } } - this.layer.addFeatures(features); + layer.addFeatures(features); } } - this.layer.events.triggerEvent("loadend", {response: resp}); + layer.events.triggerEvent("loadend", {response: resp}); }, CLASS_NAME: "OpenLayers.Strategy.Fixed"