Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 361127 - AbstractActivityManager does not manage listeners properly
Summary: AbstractActivityManager does not manage listeners properly
Status: VERIFIED FIXED
Alias: None
Product: Platform
Classification: Eclipse Project
Component: UI (show other bugs)
Version: 3.8   Edit
Hardware: All All
: P3 normal (vote)
Target Milestone: 3.8 M3   Edit
Assignee: Dean Roberts CLA
QA Contact: Remy Suen CLA
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-10-17 08:35 EDT by Dean Roberts CLA
Modified: 2011-12-01 08:49 EST (History)
1 user (show)

See Also:


Attachments
Patch (1.95 KB, patch)
2011-10-17 10:15 EDT, Dean Roberts CLA
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Dean Roberts CLA 2011-10-17 08:35:51 EDT
AbstractActivityManager uses an ArrayList to manage its listeners.

The result is that if listeners are removed by a listener handler, then not all registered listeners will receive event notification.

The fix is simply to use ListenerList to store the list of Listeners and not ArrayList.

This problem (and fix) is similar and related to bug 359887.
Comment 1 Dean Roberts CLA 2011-10-17 10:15:12 EDT
Created attachment 205332 [details]
Patch
Comment 2 Dean Roberts CLA 2011-10-17 10:16:53 EDT
I think this patch should probably be back ported to the 3.x stream.  I have confirmed that listeners are being removed by the event handler.