OpenLayers OpenLayers

Changeset 4220

Show
Ignore:
Timestamp:
09/11/07 16:19:35 (1 year ago)
Author:
crschmidt
Message:

Fix for getFeatureFromEvent method on destroyed layer. (Closes #761) Review
by elem (yay)

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/openlayers/lib/OpenLayers/Layer/Vector.js

    r4110 r4220  
    362362     */ 
    363363    getFeatureFromEvent: function(evt) { 
     364        if (!this.renderer) { 
     365            OpenLayers.Console.error("getFeatureFromEvent called on layer with no renderer. This usually means you destroyed a layer, but not some handler which is associated with it.");  
     366            return null; 
     367        }     
    364368        var featureId = this.renderer.getFeatureIdFromEvent(evt); 
    365369        return this.getFeatureById(featureId); 
  • trunk/openlayers/tests/Layer/test_Vector.html

    r4114 r4220  
    149149 
    150150    function test_99_Layer_Vector_destroy (t) { 
    151         t.plan(1);     
     151        t.plan(2);     
    152152        layer = new OpenLayers.Layer.Vector(name); 
    153153        var map = new OpenLayers.Map('map'); 
     
    155155        layer.destroy(); 
    156156        t.eq(layer.map, null, "layer.map is null after destroy"); 
     157        t.eq(layer.getFeatureFromEvent({'target':'map'}), null, "getFeatureIdFromEvent doesn't cause an error when called on layer which has been destroyed."); 
    157158    } 
    158159