Ticket #9172 (closed: fixed)
Crash when closing MuonAnalysis while on Data Analysis tab
Reported by: | Arturs Bekasovs | Owned by: | Arturs Bekasovs |
---|---|---|---|
Priority: | major | Milestone: | Release 3.2 |
Component: | Muon | Keywords: | |
Cc: | Blocked By: | ||
Blocking: | Tester: | Jay Rainey |
Description
This was addressed before, but it seems that there still are circumstances when this crash happens:
- Load and plot some data in MuonAnalysis.
- Go to Data Analysis tab. Range selectors should appear on the graph.
- Move the graph window, so that it is on top of the MuonAnalysis window.
- Close MuonAnalysis.
Change History
comment:2 Changed 7 years ago by Owen Arnold
- Status changed from new to assigned
Great detailed ticket information.
comment:3 Changed 7 years ago by Arturs Bekasovs
- Status changed from assigned to inprogress
Refs #9172. Make connection to disableTools() direct
This avoids the situation with fit browser being deleted, and the tool being not.
Changeset: 93c640fadaaec04c7f2942de5a6c6eb37bf08cb9
comment:4 Changed 7 years ago by Arturs Bekasovs
Tester:
Make sure this doesn't happen any more. Closing the MuonAnalysis while on Data Analysis tab should cause range selectors on the graph to disappear.
NB: This relates to Fit Browser in MuonAnalysis only, as it is impossible to destroy the main Fit Browser, it can only be hidden.
comment:5 Changed 7 years ago by Arturs Bekasovs
- Status changed from inprogress to verify
- Resolution set to fixed
comment:6 Changed 7 years ago by Jay Rainey
- Status changed from verify to verifying
- Tester set to Jay Rainey
comment:7 Changed 7 years ago by Jay Rainey
- Status changed from verifying to closed
The crash no longer occurs. This change only effects MuonAnalysis as noted by Arthurs in comment:4. To be safe, I tested plotting in various other interfaces to ensure this change did not inadvertently break anything. All is well.
comment:8 Changed 7 years ago by Jay Rainey
Merge remote-tracking branch 'origin/bugfix/9172_muon_close_on_da_tab_crash'
Full changeset: 5dfc59db85cae37d4b77f6ef0947f49b31742809
This happens due to that line:
As the connection is queued, we sometimes end up in the state when m_fitPropertyBrowser was deleted, but the PeakPicker tool attached to it wasn't, because the disableTools() call is still in the queue. If we ask the graph to be re-plotted at that point (which happens when windows overlap), we get the crash.