Results 1 to 8 of 8

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

Threaded View

Previous Post Previous Post   Next Post Next Post
    This issue duplicates another issue.
  1. #1
    Sencha Premium Member
    Join Date
    Jul 2012
    Vote Rating

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

    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
    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 Attached Files

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts