-
Notifications
You must be signed in to change notification settings - Fork 1k
Only brings ErrorListPad to front in case of be loaded in Workbench #9121
base: main
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we know why the ErrorPad is null here?
It reminds me of that other null reference exception where the ErrorPad is null when this should not be possible since it is part of MonoDevelop.Ide.
Looking at WrapPad: It seems that the pad is removed from the list when destroyed.
|
I'm pretty sure we should be reconstructing the pad if not found. |
|
In this case the user has clicked the error or warning icon in the status bar so we should always open the Errors window. If that means we need to re-create the Errors window then we should do that and then display it. Doing nothing would not be a good user experience. There is a question of where this logic should go. I think the IdeApp.Workbench.GetPad should recreate the pad, if it needs to, since it knows about them instead of having the logic in several places. |
Makes completely sense @mrward @Therzok ! click the icon is an action entirely linked on this pad and it should recreate the panel absolutely! I was on a wrong premise. And related to the IdeApp.Workbench.GetPad recreate, not completely sure if include it here, maybe I would include another method IdeApp.Workbench.GetOrCreatePad reusing the other logic |
I was investigating with @mrward , and we don't have any kind of dispose or remove the panel. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just wondering if we could capture some extra information here to help diagnose the problem. This change will prevent a fatal exception causing a crash and still reports the problem in telemetry 👍
@monojenkins rebase |
c5dba20
to
266de5e
Compare
Only brings ErrorListPad to front in case of be loaded in Workbench
Fixes #941969 - [FATAL] System.NullReferenceException exception in MonoDevelop.MacIntegration.MainToolbar.BuildResultsView.MouseDown()