diff options
| author | Laurent Redor | 2015-02-23 11:13:52 +0000 |
|---|---|---|
| committer | Laurent Redor | 2015-02-23 11:13:52 +0000 |
| commit | 9393d3b43397b3946b81ae3c75d30e48afeaf82d (patch) | |
| tree | 4122d006a5e772f2471b000d3227d9ec3ad23045 | |
| parent | 205903dd5d791e5d134faded6c762ad06b32614a (diff) | |
| download | org.eclipse.sirius-9393d3b43397b3946b81ae3c75d30e48afeaf82d.tar.gz org.eclipse.sirius-9393d3b43397b3946b81ae3c75d30e48afeaf82d.tar.xz org.eclipse.sirius-9393d3b43397b3946b81ae3c75d30e48afeaf82d.zip | |
[460432] Fix problem of dispose for tabbar
This dispose must be called in UI thread.
Bug: 460432
Change-Id: Iafc9a03679c0ad0acb788550c574254788de3078
Signed-off-by: Laurent Redor <laurent.redor@obeo.fr>
| -rw-r--r-- | plugins/org.eclipse.sirius.diagram.ui/src-diag/org/eclipse/sirius/diagram/ui/tools/internal/editor/DDiagramEditorImpl.java | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/plugins/org.eclipse.sirius.diagram.ui/src-diag/org/eclipse/sirius/diagram/ui/tools/internal/editor/DDiagramEditorImpl.java b/plugins/org.eclipse.sirius.diagram.ui/src-diag/org/eclipse/sirius/diagram/ui/tools/internal/editor/DDiagramEditorImpl.java index 5cc883dc12..19c502dde9 100644 --- a/plugins/org.eclipse.sirius.diagram.ui/src-diag/org/eclipse/sirius/diagram/ui/tools/internal/editor/DDiagramEditorImpl.java +++ b/plugins/org.eclipse.sirius.diagram.ui/src-diag/org/eclipse/sirius/diagram/ui/tools/internal/editor/DDiagramEditorImpl.java @@ -734,7 +734,15 @@ public class DDiagramEditorImpl extends SiriusDiagramEditor implements DDiagramE protected void disposeGraphicalListeners() { // Dispose the tabbar (to avoir memory leak) if (getTabbar() != null) { - getTabbar().dispose(); + if (Display.getCurrent() == null) { + PlatformUI.getWorkbench().getDisplay().syncExec(new Runnable() { + public void run() { + getTabbar().dispose(); + } + }); + } else { + getTabbar().dispose(); + } setTabbar(null); } // Dispose post-commit listener |
