FS#37093 - [qt4] 4.8.5-2 causes application to crash with MNG error

Attached to Project: Arch Linux
Opened by Jonathan Doman (jrmrjnck) - Friday, 27 September 2013, 18:08 GMT
Last edited by Andrea Scarpino (BaSh) - Saturday, 23 November 2013, 22:04 GMT
Task Type Bug Report
Category Upstream Bugs
Status Closed
Assigned To Andrea Scarpino (BaSh)
Architecture x86_64
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 2
Private No

Details

Description:
See my forum post (https://bbs.archlinux.org/viewtopic.php?id=170379) for more information. The update from qt4 4.8.5-1 to 4.8.5-2 causes kdbg to spit out MNG errors and crash. It's my best guess that this crash is caused by a problem with the Arch qt4 package, since the only change in -2 was to add two patches (i.e. no upstream changes). The commit for the -2 upgrade also mentions "libmng rebuild" which may be directly related to my problem.

Additional info:

The GDB backtrace fails to show beyond the Qt signal call back into kdbg (it repeats #16/17 indefinitely):

#0 0x00007ffff51d469d in vfprintf () from /usr/lib/libc.so.6
#1 0x00007ffff51d9591 in buffered_vfprintf () from /usr/lib/libc.so.6
#2 0x00007ffff51d47ce in vfprintf () from /usr/lib/libc.so.6
#3 0x00007ffff51de717 in fprintf () from /usr/lib/libc.so.6
#4 0x00007ffff67758fc in qt_message_output(QtMsgType, char const*) () from /usr/lib/libQtCore.so.4
#5 0x00007ffff6775a99 in ?? () from /usr/lib/libQtCore.so.4
#6 0x00007ffff6775ce4 in qWarning(char const*, ...) () from /usr/lib/libQtCore.so.4
#7 0x00007fffea32ae10 in ?? () from /usr/lib/qt4/plugins/imageformats/libqmng.so
#8 0x00007fffea34b144 in ?? () from /usr/lib/qt4/plugins/imageformats/libqmng.so
#9 0x00007fffea34d5a1 in ?? () from /usr/lib/qt4/plugins/imageformats/libqmng.so
#10 0x00007fffea32afa1 in ?? () from /usr/lib/qt4/plugins/imageformats/libqmng.so
#11 0x00007ffff5ac5e34 in QImageReader::read(QImage*) () from /usr/lib/libQtGui.so.4
#12 0x00007ffff5ac6384 in QImageReader::read() () from /usr/lib/libQtGui.so.4
#13 0x00007ffff5addcb7 in ?? () from /usr/lib/libQtGui.so.4
#14 0x00007ffff5ade2ef in ?? () from /usr/lib/libQtGui.so.4
#15 0x00007ffff5ade547 in ?? () from /usr/lib/libQtGui.so.4
#16 0x00007ffff6893b48 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4
#17 0x00007ffff5ade66b in ?? () from /usr/lib/libQtGui.so.4

Steps to reproduce:
On an up-to-date system (qt4-4.8.5-2, libmng-2.0.2-2, kdbg-2.5.3-2), run kdbg. It crashes. This always happens on the three x86_64 systems I've tested it on.
This task depends upon

Closed by  Andrea Scarpino (BaSh)
Saturday, 23 November 2013, 22:04 GMT
Reason for closing:  Upstream
Additional comments about closing:  https://bugreports.qt-project.org/browse /QTBUG-34894
Comment by Andrea Scarpino (BaSh) - Saturday, 28 September 2013, 07:25 GMT
qt4 doesn't link anymore to libmng, but uses the internal qt version.
Did you try with a rebuild of kdbg?
Comment by Jonathan Doman (jrmrjnck) - Saturday, 28 September 2013, 08:16 GMT
Yes, I did build kdbg through abs and it crashes the same way.

I am using 4.8.5-1 at the moment so that kdbg works, and I just noticed that while it doesn't crash, the single MNG icon isn't displayed correctly. Instead there is a question mark placeholder icon. Downgrading further to 4.8.4-17 did not make it show correctly, so I guess this has been a problem for a while and I didn't notice. I was able to see that the crash occurs when kdbg tries to call KAnimatedButton::setIcons with the name of the MNG icon. I don't have much time to debug more (and it's hard without my favorite debugger!), but now I'm unsure again where the problem lies.
Comment by Andrea Scarpino (BaSh) - Saturday, 28 September 2013, 08:24 GMT
Thanks for your tests.
Since -2 we don't link to the external libmng anymore, but internal one, I say this is an upstream qt bug.
Comment by Jonathan Doman (jrmrjnck) - Saturday, 28 September 2013, 17:01 GMT
To be clear, are you saying that -1 uses external libmng and -2 uses internal? I can't see how that's true from looking at the PKGBUILD history (why does qt4 still depend on libmng), but if so, it does sound like an upstream bug and I'll report it.
Comment by Andrea Scarpino (BaSh) - Saturday, 28 September 2013, 17:08 GMT
Yes, I'm saying that.
Qt configure scripts don't recognize libmng 2.x (https://bugreports.qt-project.org/browse/QTBUG-33116) and then Qt uses its internal version.
We did notice this after the package hit the repositories and since it does not cause any harm we didn't rebuild the qt4 package.
Comment by Jonathan Doman (jrmrjnck) - Saturday, 28 September 2013, 17:26 GMT
Okay, thanks for explaining everything.
Comment by Andrea Scarpino (BaSh) - Tuesday, 22 October 2013, 17:12 GMT
Did you reported this upstream?
Comment by Christian (saedelaere) - Saturday, 16 November 2013, 18:16 GMT
Anyone reported this problem to upstream?
Comment by Jonathan Doman (jrmrjnck) - Sunday, 17 November 2013, 10:28 GMT
Thanks for reminding me - I have filed a bug report (https://bugreports.qt-project.org/browse/QTBUG-34894).

Loading...