Bug 55272 - [EditorMgmt] (leak) EditorPresentation hung onto by preference listener
Summary: [EditorMgmt] (leak) EditorPresentation hung onto by preference listener
Status: RESOLVED DUPLICATE of bug 53473
Alias: None
Product: Platform
Classification: Eclipse Project
Component: UI (show other bugs)
Version: 3.0   Edit
Hardware: PC Windows 2000
: P2 major (vote)
Target Milestone: 3.0 M8   Edit
Assignee: Chris McLaren CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-03-18 14:47 EST by Nick Edgar CLA
Modified: 2004-03-21 16:16 EST (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Nick Edgar CLA 2004-03-18 14:47:32 EST
build I20040318 + latest from HEAD

- close all editors
- Window > New Window
- close the first window

There are still 2 EditorPresentations around.  Apparently it's not unhooking its
property change listener on the preference store.

The refs to ExtensionCommandRegistry and CommandManager in the graph below are
red herrings.  The starting point is really the
AbstractUIPlugin$CompatibilityPreferenceStore.


All GC Roots -> org.eclipse.ui.internal.presentations.EditorPresentation
#149815: Direct Paths

  |
  +---org.eclipse.core.internal.registry.Extension (#57280) [Java Frame] 
    |
    +---parent org.eclipse.core.internal.registry.BundleModel (#57513)
      |
      +---parent org.eclipse.core.internal.registry.ExtensionRegistry (#5123)
        |
        +---listeners java.util.HashMap (#5235)
          |
          +---table java.util.HashMap$Entry[16] (#5325)
            |
            +---[3]  java.util.HashMap$Entry (#85301)
              |
              +---key
org.eclipse.ui.internal.commands.ExtensionCommandRegistry$1 (#86393)
                |
                +---this$0
org.eclipse.ui.internal.commands.ExtensionCommandRegistry (#85176)
                  |
                  +---commandRegistryListeners java.util.ArrayList (#102504)
                    |
                    +---elementData java.lang.Object[10] (#102547)
                      |
                      +---[0]  org.eclipse.ui.internal.commands.CommandManager$1
(#102791)
                        |
                        +---this$0
org.eclipse.ui.internal.commands.CommandManager (#85177)
                          |
                          +---mutableCommandRegistry
org.eclipse.ui.internal.commands.PreferenceCommandRegistry (#96943)
                            |
                            +---preferenceStore
org.eclipse.ui.plugin.AbstractUIPlugin$CompatibilityPreferenceStore (#96946)
                              |
                              +---listeners org.eclipse.jface.util.ListenerList
(#97608)
                                |
                                +---listeners java.lang.Object[31] (#385754)
                                  |
                                  +---[8] 
org.eclipse.ui.internal.presentations.EditorPresentation$2 (#149903)
                                    |
                                    +---this$0
org.eclipse.ui.internal.presentations.EditorPresentation (#149815)


--------------------------------------------------------------------------------

All GC Roots -> org.eclipse.ui.internal.presentations.EditorPresentation
#149815: Reverse Paths

  |
  +---org.eclipse.ui.internal.presentations.EditorPresentation (#149815)
    |
    +---this$0 of org.eclipse.ui.internal.presentations.EditorPresentation$2
(#149903)
      |
      +---[8]  of java.lang.Object[31] (#385754)
        |
        +---listeners of org.eclipse.jface.util.ListenerList (#97608)
          |
          +---listeners of
org.eclipse.ui.plugin.AbstractUIPlugin$CompatibilityPreferenceStore (#96946)
            |
            +---preferenceStore of
org.eclipse.ui.internal.commands.PreferenceCommandRegistry (#96943)
              |
              +---mutableCommandRegistry of
org.eclipse.ui.internal.commands.CommandManager (#85177)
                |
                +---this$0 of org.eclipse.ui.internal.commands.CommandManager$1
(#102791)
                  |
                  +---[0]  of java.lang.Object[10] (#102547)
                    |
                    +---elementData of java.util.ArrayList (#102504)
                      |
                      +---commandRegistryListeners of
org.eclipse.ui.internal.commands.ExtensionCommandRegistry (#85176)
                        |
                        +---this$0 of
org.eclipse.ui.internal.commands.ExtensionCommandRegistry$1 (#86393)
                          |
                          +---key of java.util.HashMap$Entry (#85301)
                            |
                            +---[3]  of java.util.HashMap$Entry[16] (#5325)
                              |
                              +---table of java.util.HashMap (#5235)
                                |
                                +---listeners of
org.eclipse.core.internal.registry.ExtensionRegistry (#5123)
                                  |
                                  +---parent of
org.eclipse.core.internal.registry.BundleModel (#57513)
                                    |
                                    +---parent of
org.eclipse.core.internal.registry.Extension (#57280) [Java Frame]
Comment 1 Nick Edgar CLA 2004-03-18 14:47:57 EST
This one -is- a continuous leak, if you're opening/closing multiple windows.

Comment 2 Chris McLaren CLA 2004-03-21 16:16:36 EST

*** This bug has been marked as a duplicate of 53473 ***