Qt4.8.3 QThread serious bug

Questions about applications and software
Forum rules
Before you post please read how to get help
Jim Jensen
Level 1
Level 1
Posts: 7
Joined: Thu Mar 14, 2013 9:34 pm

Qt4.8.3 QThread serious bug

Postby Jim Jensen » Sun Mar 24, 2013 2:37 pm

I've reported QTBUG 30251 affecting Qt 4.8.x, which is a regression bug (worked OK in 4.7.4) that seriously affects multithreaded apps. I provided suggested corrective code in qthread_unix.cpp and qthread_win.cpp in function QThreadPrivate::finish(). The gist of the bug is that the user QThread::finished() handling slot is called before attributes running and finished are set, and the slot may attempt to delete a still-running thread. The Qt Project (Thiago) has acknowledged and resolved the bug. A fix will be included in Qt 4.8.5.

While I'm able to download the Qt-released qt-everywhere-opensource-src-4.8.3.tar.gz and apply the fix, I am unable to locate the Ubuntu-modified 4.8.3 which is distributed with Mint 14.1. Installing the release 4.8.3 with my fix, while it enables my app to run successfuly, breaks some Mint-distributed software--notably hplip hp-setup and hp-systray.

I've emailed notices and a request for download link for the Ubuntu-modified Qt 4.8.3 to root@linuxmint.com and to other mint email addresses, multiple times, without response. All the Qt 4.8.3 sources I can locate online are the Qt released version, not the version as modified by Ubuntu and distributed by both Ubuntu and Mint. I have to say I'm keenly disappointed especially that Mint is unresponsive.

User avatar
Level 24
Level 24
Posts: 21382
Joined: Wed Jul 06, 2011 3:58 am
Location: The Netherlands

Re: Qt4.8.3 QThread serious bug

Postby xenopeek » Sun Mar 24, 2013 3:04 pm

Please for future reference ask such kind of questions on the forums, as the developers have a lot on their plate and might not get around to answering such questions so close to a release of Linux Mint. They will be very busy.

Qt is installed from the Ubuntu repository, but there are an awful lot of Qt packages so I don't have clue which one you mean. So if you known the package name that has this file, you can look up that package here http://packages.ubuntu.com/ and download the source from there (Linux Mint 14.1 uses the quantal distribution). Or you can do from the terminal (without sudo!) if you have enabled the Ubuntu source code repositories (steps here on how to enable that: viewtopic.php?f=34&t=111839#p626867) the following command to download the source code directly (replace packagename with the name of the package):

Code: Select all

apt-get source packagename

If you don't know the name of the package, then if you have the full path of the file you want to patch you can look up the package from which it was installed (where you replace fullpath with the full path of the file you want to patch):

Code: Select all

dpkg -S fullpath

For example, to find out from where /bin/bash was installed:

Code: Select all

dpkg -S /bin/bash

Will tell you it was installed from the package 'bash' (okay, no surprises here :wink:).

Return to “Software & Applications”