| Summary: | Disposing a ContentBehavior results in java.util.ConcurrentModificationException | ||
|---|---|---|---|
| Product: | [Tools] GEF | Reporter: | Tamas Miklossy <miklossy> |
| Component: | GEF MVC | Assignee: | Alexander Nyßen <nyssen> |
| Status: | RESOLVED FIXED | QA Contact: | |
| Severity: | normal | ||
| Priority: | P3 | CC: | nyssen |
| Version: | 1.0.0 | ||
| Target Milestone: | 4.1.0 (Neon.1) M1 | ||
| Hardware: | All | ||
| OS: | All | ||
| Whiteboard: | |||
| Bug Depends on: | 496227 | ||
| Bug Blocks: | |||
|
Description
Tamas Miklossy
This is related to the fix for bug #496227. As the ContentPartPool is centralized (a single instance is shared), no ContentBehavior may clear it (or dispose the contained parts). Instead, this needs to be done when disposing the viewer (to which it is scoped). I pushed the following changes to origin/master and origin/R4_0_maintenance: - Ensured the shared single ContentPartPool instance is disposed by AbstractViewer and not ContentBehavior. - Made ContentModel, FocusModel, HoverModel, and SelectionModel disposable, so all visual parts are properly removed when the viewer is disposed. - Ensured viewer disposes all its fields and detects whether the content part and visual part maps are not properly cleared. - Fix AbstractLogoHoverHandlePart did not properly unregister. Resolving as fixed in 4.1.0 M1. |