Bug 18510 ClassFileEditor leaks
In the 0530 build the leaks with the .java editor appear to have been fixed. The scenario I was using before: Create a .java file, close it. In memory profiler do a global GC and mark objects Open the same .java file, close it Does not leave tons of objects around anymore. However, if you import a binary plugin (I did this by importing all plugins) and open the .class file there is a significant leak. To recreate: Select a .class file (I used junit.awtui.AboutDialog.cass) from the junit.jar Open/Close it. Do a global GC, snapshot Open/Close the .class editor Do a global GC
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/ClassFileEditor.java
private final IClassFile fFile;
			private ScrolledComposite fScrolledComposite;
			private Color fBackgroundColor;
			private Color fForegroundColor;
			private Color fSeparatorColor;
			private List fBannerLabels= new ArrayList();
			private List fHeaderLabels= new ArrayList();
			private Font fFont;
			
			/**
			 * Creates a source attachment form for a class file. 
			 */
			public SourceAttachmentForm(IClassFile file) {
				fFile= file;
			}
		
			/**
			 * Returns the package fragment root of this file.
			 */
			private IPackageFragmentRoot getPackageFragmentRoot(IClassFile file) {
		
				IJavaElement element= file.getParent();
				while (element != null && element.getElementType() != IJavaElement.PACKAGE_FRAGMENT_ROOT)
					element= element.getParent();