Ticket #9172 (closed: fixed)

Opened 7 years ago

Last modified 5 years ago

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:

  1. Load and plot some data in MuonAnalysis.
  1. Go to Data Analysis tab. Range selectors should appear on the graph.
  1. Move the graph window, so that it is on top of the MuonAnalysis window.
  1. Close MuonAnalysis.

Change History

comment:1 Changed 7 years ago by Arturs Bekasovs

This happens due to that line:

  // When fit browser destroyed, disable oneself in the parent graph 
  connect(m_fitPropertyBrowser, SIGNAL( destroyed() ), graph, SLOT( disableTools() ), 
    Qt::QueuedConnection);

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.

Last edited 7 years ago by Arturs Bekasovs (previous) (diff)

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.

Last edited 7 years ago by Arturs Bekasovs (previous) (diff)

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.

Last edited 7 years ago by Jay Rainey (previous) (diff)

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

comment:9 Changed 5 years ago by Stuart Campbell

This ticket has been transferred to github issue 10014

Note: See TracTickets for help on using tickets.