[mythtv-commits] Ticket #12917: mythfrontend.real crashes since Ubuntu 16.10 upgrade
MythTV
noreply at mythtv.org
Mon Nov 14 16:47:16 UTC 2016
#12917: mythfrontend.real crashes since Ubuntu 16.10 upgrade
-----------------------------------------+--------------------------
Reporter: heynnema@… | Owner: pbennett
Type: Bug Report - General | Status: assigned
Priority: critical | Milestone: unknown
Component: MythTV - General | Version: 0.28.0
Severity: high | Resolution:
Keywords: mythfrontend stack smashing | Ticket locked: 0
-----------------------------------------+--------------------------
Comment (by pbennett):
QT 5.6.1 seg fault in ~QNetworkConfiguration during exit from program.
According to the QT Documentation QNetworkAccessManager uses by default
the QNetworkConfiguration returned by
QNetworkConfigurationManager::defaultConfiguration(). It is not clear
which QNetworkConfigurationManager object that method is called on as it
is not a static method. It seems possible that by default the same
configuration object is used by different QNetworkAccessManager objects.
When the QNetworkAccessManager in mythuiwebbrowser is deleted, there is a
segfault in the destructor ~QNetworkConfiguration. I assume this is
because the QNetworkConfiguration has already been deleted by another
QNetworkAccessManager. This seems a failure in QT to make sure the
configuration is no longer in use before deleting it. I changed
mythuiwebbrowser to make a copy of the QNetworkConfiguration in its
QNetworkAccessManager, and now the seg fault no longer happens. There are
3 or 4 other places in MythTV where QNetworkAccessManager is used and if
my analysis is correct they should also be changed otherwise unpredictable
things could happen when the QNetworkAccessManager is deleted.
QT documentation says you only need one QNetworkAccessManager in an
application. It does not tell you that if you have more than one it will
fail.
--
Ticket URL: <https://code.mythtv.org/trac/ticket/12917#comment:24>
MythTV <http://www.mythtv.org>
MythTV Media Center
More information about the mythtv-commits
mailing list