Stanton Sievers created SHINDIG-1952:
----------------------------------------

             Summary: GadgetHolder.dispose does not cleanup the OAHub container
                 Key: SHINDIG-1952
                 URL: https://issues.apache.org/jira/browse/SHINDIG-1952
             Project: Shindig
          Issue Type: Bug
          Components: Javascript 
    Affects Versions: 2.5.0-beta5
            Reporter: Stanton Sievers
            Assignee: Stanton Sievers


osapi.container.GadgetHolder.dispose should take care of all cleanup.  Today it 
will remove elements but it does not cleanup any OAHub config.

GadgetHolder.dispose should call 
osapi.container.GadgetHolder.removeOaaContainer_ if the holder was created via 
osapi.container.GadgetHolder.doOaaIframeHtml_.  

If removeOaaContainer_ is not called we can get into situations where 
OpenAjax.hub.ManagedHub has a handle to an OpenAjax.hub.IframeContainer which 
references DOM elements that no longer exist.

I've noticed this issue most frequently when a gadget is doing 
requestNavigateTo calls in Apache Rave.  GadgetHolder.doOaaIframeHtml_ will 
call GadgetHolder.removeOaaContainer_ with an iframeId for which 
OpenAjax.hub.ManagedHub still has an IframeContainer object, but which no 
longer exists in the DOM.  This causes reference errors down the line in 
IframeContainer~finishDisconnect().



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Reply via email to