Bug 59050 Dead lock in JavaReconciler
Using build I200404131323. I was editing several files and haven't save them immediately when my eclipse hanged infinitely... Looking at console, the exception seems to show that I was trying to open a popup-menu on a new created class, but I'm not completely sure that dead-lock occurred exactly at this moment. I'll add complete console output including VM Dump Thread which identifies the dead-lock... Set severity 'critical' as I have to cancel my eclipse session without saving and lost my modifications in modified editors...
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/CompilationUnitEditor.java
super.configure(configuration);
			fCorrectionAssistant= new JavaCorrectionAssistant(CompilationUnitEditor.this);
			fCorrectionAssistant.install(this);
			IAutoEditStrategy smartSemi= new SmartSemicolonAutoEditStrategy(IJavaPartitions.JAVA_PARTITIONING);
			prependAutoEditStrategy(smartSemi, IDocument.DEFAULT_CONTENT_TYPE);
		}
		
		/*
		 * @see org.eclipse.jface.text.source.SourceViewer#createFormattingContext()
		 * @since 3.0
		 */
		public IFormattingContext createFormattingContext() {
			IFormattingContext context= new CommentFormattingContext();
			
			Map preferences;
			IJavaElement inputJavaElement= getInputJavaElement();
			IJavaProject javaProject= inputJavaElement != null ? inputJavaElement.getJavaProject() : null;
			if (javaProject == null)
				preferences= new HashMap(JavaCore.getOptions());
			else
				preferences= new HashMap(javaProject.getOptions(true));
			
			context.storeToMap(PreferenceConstants.getPreferenceStore(), preferences, false);
			context.setProperty(FormattingContextProperties.CONTEXT_PREFERENCES, preferences);
			
			return context;
		}
	}
	
	static class TabConverter implements ITextConverter {