| Summary: | Class Cast exception when Expression view has expressions defined by non-Java debug session | ||
|---|---|---|---|
| Product: | [Eclipse Project] JDT | Reporter: | Elena Laskavaia <elaskavaia.cdt> |
| Component: | Debug | Assignee: | Pawel Piech <pawel.1.piech> |
| Status: | CLOSED FIXED | QA Contact: | |
| Severity: | normal | ||
| Priority: | P3 | CC: | darin.eclipse |
| Version: | 3.4.1 | ||
| Target Milestone: | 3.5 M6 | ||
| Hardware: | PC | ||
| OS: | Linux | ||
| Whiteboard: | |||
|
Description
Elena Laskavaia
The label provider for a watch expression is derived from the expression's context's "debug model ID". The context is set from the selected stack frame. Sounds like a synch problem where the label was being retrived when it was bound the Java model, but it has since been bound to C model. It would be safer to derive the model from the expression's current value if it has one, else delegate to the context's model. I updated the logic in WatchExpression.getModelIdentifier(). Pawel, please verify. I can't reproduce the problem with PDA, but perhaps you can try with CDT. I cannot reproduce the CCE either (with CDT), but the patch looks fine to me. checked with current trunk - no CCE anymore, thanks |