Bug 409090 - Deadlock during rename of entity

Change-Id: I24512c9f531b6fb901113f5d1f527ad24d1dcc88
diff --git a/jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/util/GraphicsUpdater.java b/jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/util/GraphicsUpdater.java
index a24442d..6fab07e 100644
--- a/jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/util/GraphicsUpdater.java
+++ b/jpa_diagram_editor/plugins/org.eclipse.jpt.jpadiagrameditor.ui/src/org/eclipse/jpt/jpadiagrameditor/ui/internal/util/GraphicsUpdater.java
@@ -27,6 +27,7 @@
 import org.eclipse.graphiti.mm.pictograms.Shape;
 import org.eclipse.graphiti.services.Graphiti;
 import org.eclipse.jpt.jpadiagrameditor.ui.internal.util.JPAEditorConstants.ShapeType;
+import org.eclipse.swt.widgets.Display;
 
 
 public class GraphicsUpdater {
@@ -169,17 +170,22 @@
 		final Text txt = getHeaderText(entityShape);
 		if (txt == null)
 			return;
-		//if (!JPAEditorUtil.areHeadersEqual(txt.getValue(), newHeader)) {
+//		if (!JPAEditorUtil.areHeadersEqual(txt.getValue(), newHeader)) {
 
 		if (!txt.getValue().equals(newHeader)) {
-			TransactionalEditingDomain ted = TransactionUtil.getEditingDomain(txt);
-			RecordingCommand rc = new RecordingCommand(ted) {
+			final TransactionalEditingDomain ted = TransactionUtil.getEditingDomain(txt);
+			final RecordingCommand rc = new RecordingCommand(ted) {
 				@Override
 				protected void doExecute() {
 					txt.setValue(newHeader);		
 				}		
-			};			
-			ted.getCommandStack().execute(rc);
+			};	
+			
+			Display.getDefault().syncExec(new Runnable() {
+				public void run() {
+					ted.getCommandStack().execute(rc);
+				}
+			});
 		}
 	}