| Summary: | [event] MIGDBExitedEvent never dispatched, but listened for | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Product: | [Tools] CDT | Reporter: | Marc Khouzam <marc.khouzam> | ||||||
| Component: | cdt-debug-dsf-gdb | Assignee: | Pawel Piech <pawel.1.piech> | ||||||
| Status: | CLOSED FIXED | QA Contact: | |||||||
| Severity: | normal | ||||||||
| Priority: | P3 | CC: | cdtdoug, dd.general-inbox | ||||||
| Version: | 0 DD 1.1 | Flags: | cdtdoug:
iplog-
|
||||||
| Target Milestone: | DD 1.1 | ||||||||
| Hardware: | PC | ||||||||
| OS: | Linux | ||||||||
| Whiteboard: | |||||||||
| Attachments: |
|
||||||||
Created attachment 109208 [details]
API compatible patch
I realized that I should not remove eventListener methods that were catching MIGDBExitEvent, since it would break the API compatibility.
This is the patch I actually committed.
Fixed. Pawel, can you verify? The MIGDBExitEvent is a bit of a left over from CDI/MI carry over. CDI uses it the way we're using BackendExitedEvent, so I think it would be fine to just remove it, but since it's in the public API we should just deprecate it. As far as the Backend exited/started events, I think it would be even better to push them into the DSF interface level. I created bug 243611 for that change. DD 1.1 reelased! |
Created attachment 109206 [details] Use of BackendExitedEvent instead of MIGDBExitedEvent There is an event called MIGDBExitedEvent, which we never issue. However, a couple of services listen for it. For example, the RunControl service uses it to set its fTerminated variable (which currently never gets set to true, because the event is never received.) We do have a GDBExitedEvent issued by GDBControl, however it is in GDB plugins, while the services listening for MIGDBExitedEvent are in MI plugins, so I can not simply replace one for the other. One possibility is to remove GDBExistedEvent from GDBControl and use MIGDBExisted event instead. However, this is not very clean as MIGDBExited event is meant to be an event received by the backend. Instead, we could rename GDBExitedEvent to BackendExitedEvent (or something) and move it to AbstractMIControl; then we can have services listen for that, instead of MIGDBExited event. Note that we are ok for backwards compatibility because GDBControl which will lose GDBExitedEvent and GDBStartedEvent is provisional. Committed, but open for comments.