Threaded View

    This issue duplicates another issue.
  1. #1
    Sencha Premium Member
    Join Date
    Jul 2012
    Posts
    64
    Vote Rating
    6
    jim@carroll.net is on a distinguished road

      1  

    Default BUG FIX: src/tree/View.js (patch attached)

    BUG FIX: src/tree/View.js (patch attached)


    REQUIRED INFORMATION
    Ext version tested:
    • Ext 4.1.3
    Browser versions tested against:
    • Chrome 24.0.1312.57 m
    • IE 8.0.6
    • FF 18.0.2 (firebug 1.12.0a.2 installed)
    • Safari 5.1.7
    Description:Steps to reproduce the problem:
    • Create app with window that get's opened on button click
    • In the window, display a tree panel that is read from an ajax source
    • Run app, and open window, then close it.
    • Re-open Window.
    • Error from Chrome: Uncaught TypeError: Cannot call method 'indexOf' of null ext-all-dev.js:164027
    The full chrome stack trace is:

    1. Uncaught TypeError: Cannot call method 'indexOf' of null ext-all-dev.js:164027
    1. Ext.define.onBeforeFillext-all-dev.js:164027
    2. Ext.define.fireext-all-dev.js:14999
    3. continueFireEventext-all-dev.js:28029
    4. fireEventext-all-dev.js:28000
    5. Ext.define.fillNodeext-all-dev.js:96156
    6. Ext.define.onProxyLoadext-all-dev.js:96205
    7. Ext.define.processResponseext-all-dev.js:87982
    8. (anonymous function)ext-all-dev.js:88471
    9. Ext.apply.callbackext-all-dev.js:11434
    10. Ext.define.onCompleteext-all-dev.js:37132
    11. Ext.define.onStateChangeext-all-dev.js:37069
    12. (anonymous function)ext-all-dev.js:3000


    Possible fix:

    The solution requires a fix to Ext.tree.View (we have attached a patch with this report). Bottom line, the initComponent method of Ext.tree.View registers listeners using the unmanaged on() call for both it's own store and the treepanel's store. It should instead using the addManagedListner version -- ie: mon().

    What appears to be happening is that even AFTER the window containing the treepanel is closed, the 'beforefill' event handler is still registered. The second time the window is created, there are now two 'beforefill' event handlers, but the first registered handler refers to a view that is no longer valid. When the event fires, it try's to dereference a 'null' reference which causes the exception.

    Operating System:
    • Windows 7 Pro
    • Windows 2003 Server
    Attached Files

Thread Participants: 2

Tags for this Thread