PDA

View Full Version : Contents of tabs getting mixed up after heavy use



kevinday
2 Sep 2011, 8:36 AM
I realize this is a really vague report, but the application that is experiencing this is gigantic and I'm totally at a loss as to where this is coming from. I'm just hoping someone here might get reminded of something that might help me narrow down what's going on.

We've ported a legacy app to using Ext JS for the UI, currently using 3.3.2. The viewport is using the border layout, and in the center region there's a tab panel. During the use of the application, tabs are opened and closed, and switched between both by the user clicking on them and using setActiveTab() to force a tab to the front on certain events.

All access to the content of the tabs is being edited by manipulating the tab's body.dom directly, not using any of the Ext helper functions, and there are no Ext widgets inside the tabs, just raw HTML. (This is because of the port from the legacy code, trying to bite off one piece at a time for rewriting it.)

We're bumping into something extremely rarely, that I can't really understand what's going on. When the user switches between two tabs, very very very rarely something is happening where the contents of two tabs are getting merged together, and (sometimes) one tab disappears from the tab bar at the top. I.e. if there are 8 tabs, numbered 1 through 8, sometimes when switching to tab #2, the contents of tab #2 have suddenly become tab #2's contents with tab #6's contents below it. Which also sometimes causes tab #6 to disappear from the tab bar.

I've looked at every place where we are altering the contents of the tabs, and I'm reasonably convinced there's no way we could make this happen directly. Nowhere are we looking at the contents of one tab while writing to another, or anywhere that even accesses the contents of two tabs at once where a variable could even possibly be holding the contents of two at once.

Does this sound familiar to anyone? Tabs having their contents merged together, possibly when a new tab is being made active?

Sorry for the vagueness, but this has never happened on my own machine, I'm just getting screenshots from users showing the results and am completely baffled as to how this is happening.