subsurface/desktop-widgets
Berthold Stoeger 88ed5bf050 Desktop: destroy maintab before destructing mainwindow
Apparently, in some Qt-versions the destructor of the base class
calls hide on child-objects (according to Qt's object hierarchy).
This is obviously called after the derived class has been destructed.

In a concrete case, the base class of the destructed MainWindow
would hide the TabDiveSite object. That would reset the filtering
if a dive site was selected, which would indirectly access the
MainWindow, which is already partially destroyed.

Therefore, destroy the MainTab before destroying the MainWindow.
Do this by keeping it as a std::unique_ptr subobject. Thus, it
will be destroyed before the MainWindow and remove itself from
Qt's object hierarchy.

Reported-by: Dirk Hohndel <dirk@hohndel.org>
Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2019-04-14 03:16:48 +12:00
..
2015-10-30 10:36:49 -07:00
2019-01-02 09:45:01 -08:00
2017-04-29 13:32:55 -07:00
2017-11-30 23:14:46 -08:00
2019-04-12 18:19:07 +03:00
2019-04-12 18:19:07 +03:00
2019-04-04 09:33:56 -07:00
2018-12-14 01:05:18 +08:00
2015-10-30 10:36:49 -07:00
2017-11-30 23:14:46 -08:00
2017-11-30 23:14:46 -08:00
2017-11-30 23:14:46 -08:00
2017-11-30 23:14:46 -08:00
2018-12-14 01:05:18 +08:00
2017-11-30 23:14:46 -08:00
2015-10-30 10:36:49 -07:00
2017-03-06 06:40:00 -08:00
2017-11-30 23:14:46 -08:00