[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#479029: Segfault on loading programm icons



-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Package: qt4-x11
Severity: grave
Version: 4.4.0~rc1-5

Hello,

I just noticed, that my package fraqtive (uploaded yesterday) segfaults
directly on starting. Here the gdb output:

(gdb) run
Starting program: /usr/bin/fraqtive
[Thread debugging using libthread_db enabled]
[New Thread 0xb6da2a40 (LWP 7230)]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb6da2a40 (LWP 7230)]
0xb75487cf in QtPrivate::QStringList_contains () from
/usr/lib/libQtCore.so.4
(gdb) bt
#0  0xb75487cf in QtPrivate::QStringList_contains () from
/usr/lib/libQtCore.so.4
#1  0xb75d0c92 in QFactoryLoader::instance () from /usr/lib/libQtCore.so.4
#2  0xb789fc88 in QIcon::addFile () from /usr/lib/libQtGui.so.4
#3  0x0808f7a6 in MultiIconEngine (this=0x9c0c738, fileName=@0xbf5645c4)
at multiiconengine.cpp:43
#4  0x0808f870 in MultiIconEnginePlugin::create (this=0x827b9a8,
fileName=@0xbf5645c4) at multiiconengine.cpp:90
#5  0xb789fcba in QIcon::addFile () from /usr/lib/libQtGui.so.4
#6  0x0808f7a6 in MultiIconEngine (this=0x9c0c250, fileName=@0xbf5646a4)
at multiiconengine.cpp:43
#7  0x0808f870 in MultiIconEnginePlugin::create (this=0x827b9a8,
fileName=@0xbf5646a4) at multiiconengine.cpp:90
#8  0xb789fcba in QIcon::addFile () from /usr/lib/libQtGui.so.4
#9  0x0808f7a6 in MultiIconEngine (this=0x9c0bd68, fileName=@0xbf564784)
at multiiconengine.cpp:43
#10 0x0808f870 in MultiIconEnginePlugin::create (this=0x827b9a8,
fileName=@0xbf564784) at multiiconengine.cpp:90
#11 0xb789fcba in QIcon::addFile () from /usr/lib/libQtGui.so.4
#12 0x0808f7a6 in MultiIconEngine (this=0x9c0b880, fileName=@0xbf564864)
at multiiconengine.cpp:43
#13 0x0808f870 in MultiIconEnginePlugin::create (this=0x827b9a8,
fileName=@0xbf564864) at multiiconengine.cpp:90
#14 0xb789fcba in QIcon::addFile () from /usr/lib/libQtGui.so.4
#15 0x0808f7a6 in MultiIconEngine (this=0x9c0b398, fileName=@0xbf564944)
at multiiconengine.cpp:43
#16 0x0808f870 in MultiIconEnginePlugin::create (this=0x827b9a8,
fileName=@0xbf564944) at multiiconengine.cpp:90
#17 0xb789fcba in QIcon::addFile () from /usr/lib/libQtGui.so.4
#18 0x0808f7a6 in MultiIconEngine (this=0x9c0aeb0, fileName=@0xbf564a24)
at multiiconengine.cpp:43
#19 0x0808f870 in MultiIconEnginePlugin::create (this=0x827b9a8,
fileName=@0xbf564a24) at multiiconengine.cpp:90
#20 0xb789fcba in QIcon::addFile () from /usr/lib/libQtGui.so.4
#21 0x0808f7a6 in MultiIconEngine (this=0x9c0a9c8, fileName=@0xbf564b04)
at multiiconengine.cpp:43
#22 0x0808f870 in MultiIconEnginePlugin::create (this=0x827b9a8,
fileName=@0xbf564b04) at multiiconengine.cpp:90
#23 0xb789fcba in QIcon::addFile () from /usr/lib/libQtGui.so.4
#24 0x0808f7a6 in MultiIconEngine (this=0x9c0a4e0, fileName=@0xbf564be4)
at multiiconengine.cpp:43
#25 0x0808f870 in MultiIconEnginePlugin::create (this=0x827b9a8,
fileName=@0xbf564be4) at multiiconengine.cpp:90
#26 0xb789fcba in QIcon::addFile () from /usr/lib/libQtGui.so.4
#27 0x0808f7a6 in MultiIconEngine (this=0x9c09ff8, fileName=@0xbf564cc4)
at multiiconengine.cpp:43
#28 0x0808f870 in MultiIconEnginePlugin::create (this=0x827b9a8,
fileName=@0xbf564cc4) at multiiconengine.cpp:90
#29 0xb789fcba in QIcon::addFile () from /usr/lib/libQtGui.so.4
#30 0x0808f7a6 in MultiIconEngine (this=0x9c09b10, fileName=@0xbf564da4)
at multiiconengine.cpp:43
#31 0x0808f870 in MultiIconEnginePlugin::create (this=0x827b9a8,
fileName=@0xbf564da4) at multiiconengine.cpp:90
#32 0xb789fcba in QIcon::addFile () from /usr/lib/libQtGui.so.4
#33 0x0808f7a6 in MultiIconEngine (this=0x9c09628, fileName=@0xbf564e84)
at multiiconengine.cpp:43
#34 0x0808f870 in MultiIconEnginePlugin::create (this=0x827b9a8,
fileName=@0xbf564e84) at multiiconengine.cpp:90


The affected lines are:

 39     for ( int i = 0; sizes[ i ] > 0; i++ ) {
 40         int size = sizes[ i ];
 41         QString iconName = baseName + QString::number( size ) + ".png";
 42         if ( QFile::exists( iconName ) )
 43             m_icon.addFile( iconName, QSize( size, size ) );
 44     }


 88 QIconEngine* MultiIconEnginePlugin::create( const QString& fileName )
 89 {
 90     return new MultiIconEngine( fileName );
 91 }


I rebuilded all 0.4.x fraqtive releases with the newer qt4-x11 builds
and all versions fail now with the same reason.
While it was working before I think it's an fault in qt4-x11 itself. :(

I'm sorry while I'm at work I haven't got the time to test it with older
qt4-x11 builds and releases.


Another curiosity is, that I just get the following output with
installed libqt4-dbg symbols:

(gdb) run
Starting program: /usr/bin/fraqtive
[Thread debugging using libthread_db enabled]
[New Thread 0xb6cf9a40 (LWP 7332)]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb6cf9a40 (LWP 7332)]
0xb7118d19 in ?? () from /lib/libc.so.6
(gdb) bt
#0  0xb7118d19 in ?? () from /lib/libc.so.6
#1  0x00000000 in ?? ()
(gdb) bt full
#0  0xb7118d19 in ?? () from /lib/libc.so.6
No symbol table info available.
#1  0x00000000 in ?? ()
No symbol table info available.

The trace above is without libqt4-dbg.

- --
Mit freundlichem Gruß / With kind regards,
Patrick Matthäi

E-Mail: patrick.matthaei@web.de

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)

iD8DBQFIGvmf2XA5inpabMcRAvZ0AJ99AM+MZWSYr8x2XklX2BKF1EH+PACfYEzN
gkEo0FlN17JoaRA6H69m82c=
=SklZ
-----END PGP SIGNATURE-----



Reply to: