Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 460816

Summary: Dispose graphical listeners sooner during the close of an editor
Product: [Modeling] Sirius Reporter: Laurent Redor <laurent.redor>
Component: DiagramAssignee: Laurent Redor <laurent.redor>
Status: CLOSED FIXED QA Contact:
Severity: normal    
Priority: P3 CC: belqassim.djafer, maxime.porhel, pierre-charles.david
Version: 2.0.0Keywords: triaged
Target Milestone: 3.0.0M6   
Hardware: All   
OS: All   
See Also: https://git.eclipse.org/r/42659
https://git.eclipse.org/r/42658
https://git.eclipse.org/c/sirius/org.eclipse.sirius.git/commit/?id=051561733efbb093b4dd606d727041b0170ecbd3
https://git.eclipse.org/c/sirius/org.eclipse.sirius.git/commit/?id=8238f3d2a82c7d5374f0805b269d4438884723be
Whiteboard:
Bug Depends on: 460432    
Bug Blocks:    

Description Laurent Redor CLA 2015-02-25 10:31:44 EST
+++ This bug was initially created as a clone of Bug #460432 +++

Currently, the dispose of "graphical listeners"* are made in the DDiagramEditorImpl.dispose(). But this method is finally called in asyncExec by org.eclipse.gmf.runtime.diagram.ui.resources.editor.parts.DiagramDocumentEditor.close(boolean). This can be problematic because these listeners can be called with inconsistent state during the close.

It is possible to dispose these graphical listeners directly in DDiagramEditorImpl.dispose(), before the call to super.close(boolean), to avoid this kind of problem.

"Graphical listeners": All the listeners that update the diagram accordingly to notifications
Comment 1 Eclipse Genie CLA 2015-02-25 10:42:11 EST
New Gerrit change created: https://git.eclipse.org/r/42659
Comment 2 Eclipse Genie CLA 2015-02-25 10:42:13 EST
New Gerrit change created: https://git.eclipse.org/r/42658
Comment 5 Laurent Redor CLA 2015-03-02 03:31:24 EST
The commits of bug 460432 have been reported for this backport (but merged in 2 commits instead of 4).
Comment 6 Belqassim Djafer CLA 2015-04-13 11:38:50 EDT
Verified as technical issue
Comment 7 Pierre-Charles David CLA 2015-06-24 11:16:24 EDT
Available in Sirius 3.0.0. See https://wiki.eclipse.org/Sirius/3.0.0.