OpenLayers OpenLayers

Changeset 6447

Show
Ignore:
Timestamp:
03/06/08 13:24:18 (6 months ago)
Author:
tschaub
Message:

Adding explicit eventListener unregistering in map, layer, and control destroy methods. Note that this only makes explicit what is already happening elsewhere, but it makes us feel complete. Also throwing in the example I missed in the previous change. r=euzuro (closes #1404)

Files:

Legend:

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

    r6435 r6447  
    179179    destroy: function () { 
    180180        if(this.events) { 
     181            if(this.eventListeners) { 
     182                this.events.un(this.eventListeners); 
     183            } 
    181184            this.events.destroy(); 
    182185            this.events = null; 
    183186        } 
     187        this.eventListeners = null; 
     188 
    184189        // eliminate circular references 
    185190        if (this.handler) { 
  • trunk/openlayers/lib/OpenLayers/Layer.js

    r6435 r6447  
    316316 
    317317        if (this.events) { 
     318            if(this.eventListeners) { 
     319                this.events.un(this.eventListeners); 
     320            } 
    318321            this.events.destroy(); 
    319322        } 
     323        this.eventListeners = null; 
    320324        this.events = null; 
    321325    }, 
  • trunk/openlayers/lib/OpenLayers/Map.js

    r6444 r6447  
    546546        this.viewPortDiv = null; 
    547547 
     548        if(this.eventListeners) { 
     549            this.events.un(this.eventListeners); 
     550            this.eventListeners = null; 
     551        } 
    548552        this.events.destroy(); 
    549553        this.events = null;