rem: onload.bindAsEventListener(this)); 
add: onload.bind(this)); 
context:     moveTo:function(bounds, zoomChanged, dragging) {        if (!this.doneLoading) {            this.events.triggerEvent("loadcancel");             this.doneLoading = true;         }        OpenLayers.Layer.HTTPRequest.prototype.moveTo.apply(this,arguments);                if (bounds == null) {            bounds = this.map.getExtent();        }        var firstRendering = (this.tile == null);        //does the new bounds to which we need to move fall outside of the         // current tile's bounds?        var outOfBounds = (!firstRendering &&                           !this.tile.bounds.containsBounds(bounds));        if ( zoomChanged || firstRendering || (!dragging && outOfBounds) ) {            //clear out the old tile             if (this.tile) {                this.tile.clear();            }            //determine new tile bounds            var center = bounds.getCenterLonLat();            var tileWidth = bounds.getWidth() * this.ratio;            var tileHeight = bounds.getHeight() * this.ratio;            var tileBounds =                 new OpenLayers.Bounds(center.lon - (tileWidth / 2),                                      center.lat - (tileHeight / 2),                                      center.lon + (tileWidth / 2),                                      center.lat + (tileHeight / 2));            //determine new tile size            this.setTileSize();            //determine new position (upper left corner of new bounds)            var ul = new OpenLayers.LonLat(tileBounds.left, tileBounds.top);            var pos = this.map.getLayerPxFromLonLat(ul);            if ( this.tile && !this.tile.size.equals(this.tileSize)) {                this.tile.destroy();                this.tile = null;            }            this.events.triggerEvent("loadstart");            this.doneLoading = false;            if (!this.tile) {                this.tile = new OpenLayers.Tile.Image(this, pos, tileBounds,                                                       null, this.tileSize);                this.tile.draw();                var onload = function() {                     this.doneLoading = true;                     this.events.triggerEvent("loadend");                 }                OpenLayers.Event.observe(this.tile.imgDiv, 'load',                                         onload.bindAsEventListener(this));            } else {                this.tile.moveTo(tileBounds, pos);            }             }    },
meta: 1027	/local1/tlutelli/issta_data/temp/all_js/javascript/2007_temp/2007/1027/e8a4938258d66232ee2bd916b98ebf25995d7cac/Untiled.js/buggy/lib/OpenLayers/Layer/MapServer/Untiled.js