Details
-
Bug
-
Resolution: Fixed
-
None
-
Empty show more show less
Description
problem
Assume the following situation:
Start Analyse on task A, close task properties panel. The analyse is still running in the Background. Open Task Properties Panel of Task B.
Two errors can now be recognized:
- If another Analysis is started for Task B (which must finish before Task A's analysis), the loading mask remains in the Task Bs "Associate language resources" tab. The problem is, that the unmask is triggered by the TaskOverview Controllers "taskStateCheckPullCleaned" event. Since Task A is still in analyse, the unmask is never triggered.
- The next problem has the same reason, but is a little bit different: starting again with Task A, then while the analyse is running, open another tasks "Associate language resources" tab. Do nothing with Task B, just have the panel open. If Task A finishes, the method "removeLoadingMask(true)" is called. Since a task property panel is open (not the one of the finishing Task A, but the one of Task B), the removeLoadingMask(true) tries to reload the match analysis grids store. But the reload is called without the needed tadkGuid parameter. Although if the parameter would be given here, it would reload the data for wrong task: (Task B is shown, Task A is finished).
- Above problem 2 is leading to the error mails: "ERROR in plugin.matchanalysis: E1103 - MatchAnalysis Plug-In: tried to load analysis data without providing a valid taskGuid"
Solution
Remove the "taskStateCheckPullCleaned" at this place. On each "finish analyse of a task" there should be an event. Listen to that event instead in the opened window. If the "current taskGuid in the window" != "the taskGuid of the finished analyse" do nothing. Do only something if the taskGuid is the same.