From 1f567bc4422fd6f98806222419875363968d6790 Mon Sep 17 00:00:00 2001 From: Petya Sabeva Date: Mon, 27 May 2013 10:00:03 +0300 Subject: Bug 409090 - Deadlock during rename of entity Change-Id: I24512c9f531b6fb901113f5d1f527ad24d1dcc88 --- .../ui/internal/util/GraphicsUpdater.java | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) 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 a24442d9fc..6fab07eb6e 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.ContainerShape; 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 @@ public class GraphicsUpdater { 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); + } + }); } } -- cgit v1.2.3