Comment 20 for bug 1803808

Revision history for this message
Peter Wu (lekensteyn) wrote :

Can reproduce the crash with a fully up-to-date Ubuntu 16.04.

libqt5gui5:amd64 5.5.1+dfsg-16ubuntu7.6
wireshark-qt 2.6.8-1~ubuntu16.04.0

(gdb) bt
#0 QIconPrivate::~QIconPrivate (this=0x5555580aaf60, __in_chrg=<optimized out>) at image/qicon_p.h:64
#1 QIcon::~QIcon (this=<optimized out>, __in_chrg=<optimized out>) at image/qicon.cpp:681
#2 0x00007ffff0ea4c88 in ScalableEntry::~ScalableEntry (this=0x55555641d500, __in_chrg=<optimized out>)
    at ../../include/QtGui/5.5.1/QtGui/private/../../../../../src/gui/image/qiconloader_p.h:95
#3 ScalableEntry::~ScalableEntry (this=0x55555641d500, __in_chrg=<optimized out>) at ../../include/QtGui/5.5.1/QtGui/private/../../../../../src/gui/image/qiconloader_p.h:95
#4 0x00007ffff0e9f07e in qDeleteAll<QList<QIconLoaderEngineEntry*>::const_iterator> (end=..., begin=...) at ../../include/QtCore/../../src/corelib/tools/qalgorithms.h:317
#5 qDeleteAll<QList<QIconLoaderEngineEntry*> > (c=...) at ../../include/QtCore/../../src/corelib/tools/qalgorithms.h:325
#6 QIconLoaderEngine::~QIconLoaderEngine (this=0x5555563a82c0, __in_chrg=<optimized out>) at image/qiconloader.cpp:352
#7 QIconLoaderEngine::~QIconLoaderEngine (this=0x5555563a82c0, __in_chrg=<optimized out>) at image/qiconloader.cpp:353
#8 0x00007ffff0e9b0da in QIconPrivate::~QIconPrivate (this=0x5555564193a0, __in_chrg=<optimized out>) at image/qicon_p.h:64
#9 QIcon::~QIcon (this=<optimized out>, __in_chrg=<optimized out>) at image/qicon.cpp:681
#10 0x00007ffff0e9b109 in QCache<QString, QIcon>::clear (this=0x7ffff126a3a0 <(anonymous namespace)::Q_QGS_qtIconCache::innerFunction()::holder>)
    at ../../include/QtCore/../../src/corelib/tools/qcache.h:118
#11 QCache<QString, QIcon>::~QCache (this=0x7ffff126a3a0 <(anonymous namespace)::Q_QGS_qtIconCache::innerFunction()::holder>, __in_chrg=<optimized out>)
    at ../../include/QtCore/../../src/corelib/tools/qcache.h:87
#12 (anonymous namespace)::IconCache::~IconCache (this=0x7ffff126a3a0 <(anonymous namespace)::Q_QGS_qtIconCache::innerFunction()::holder>, __in_chrg=<optimized out>) at image/qicon.cpp:98
#13 (anonymous namespace)::Q_QGS_qtIconCache::Holder::~Holder (this=0x7ffff126a3a0 <(anonymous namespace)::Q_QGS_qtIconCache::innerFunction()::holder>, __in_chrg=<optimized out>)
    at image/qicon.cpp:108
#14 0x00007fffef549ff8 in __run_exit_handlers (status=0, listp=0x7fffef8d45f8 <__exit_funcs>, run_list_atexit=run_list_atexit@entry=true) at exit.c:82
#15 0x00007fffef54a045 in __GI_exit (status=<optimized out>) at exit.c:104
#16 0x00005555556b6a83 in exit_application (status=<optimized out>) at /build/wireshark-7bKlj5/wireshark-2.6.8/wireshark-qt.cpp:174
#17 0x00005555556b2296 in main (argc=1, qt_argv=<optimized out>) at /build/wireshark-7bKlj5/wireshark-2.6.8/wireshark-qt.cpp:984

I was not able to reproduce this issue with a Wireshark build from git using `cmake -GNinja -DCMAKE_BUILD_TYPE=Debug -DENABLE_ASAN=1 ~/wireshark && ninja wireshark`:

* master v3.1.0rc0-1166-g1e7f85e02f66
* master-3.0 v3.0.3rc0-46-gd094b56a9b4e

I can reproduce the crash with the same build settings and:

* master-2.6 v3.1.0rc0-1168-gc0822c187b

No idea what has changed since 3.0, but I guess you can safely upgrade to Wireshark 3.0 now to fix this issue.