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
data.heightHint= 2;
				separator.setLayoutData(data);
		
				try {
					final IPackageFragmentRoot root= getPackageFragmentRoot(fFile);
					if (root != null) {
						
						IClasspathEntry entry= root.getRawClasspathEntry();	
						
						if (!root.isArchive()) {
							createLabel(composite, JavaEditorMessages.getFormattedString("SourceAttachmentForm.message.noSource", fFile.getElementName())); 
			
						} else if (entry != null && entry.getEntryKind() == IClasspathEntry.CPE_CONTAINER) {	
							IClasspathContainer container= JavaCore.getClasspathContainer(entry.getPath(), root.getJavaProject());							
							String containerName= container == null ? entry.getPath().toString() : container.getDescription();
							createLabel(composite, JavaEditorMessages.getFormattedString("SourceAttachmentForm.message.containerEntry", containerName));  
	
						} else {
							
							Button button;
		
							IPath path= root.getSourceAttachmentPath();			
							if (path == null) {			
								createLabel(composite, JavaEditorMessages.getFormattedString("SourceAttachmentForm.message.noSourceAttachment", root.getElementName())); 
								createLabel(composite, JavaEditorMessages.getString("SourceAttachmentForm.message.pressButtonToAttach")); 
								createLabel(composite, null);
		
								button= createButton(composite, JavaEditorMessages.getString("SourceAttachmentForm.button.attachSource"));		 
		
							} else {