qt3: add patch (suggested by danm) to fix crashy behaviour
This commit is contained in:
parent
9b3b17d9d8
commit
a2ba574bc2
@ -1,3 +1,4 @@
|
|||||||
|
9d91c83f4addae1830c68c63b8aa806c 0999_qt-3.3.5-qlistview.patch
|
||||||
05d04688c0c0230ed54e89102d689ca4 qt-x11-free-3.3.5.tar.bz2
|
05d04688c0c0230ed54e89102d689ca4 qt-x11-free-3.3.5.tar.bz2
|
||||||
a0420bc8ef951b0299b6055043988211 qt3-3.3.5-2-patches.tar.bz2
|
a0420bc8ef951b0299b6055043988211 qt3-3.3.5-2-patches.tar.bz2
|
||||||
7d8d3356a17201832e361df69c63e9a4 qt3-3.3.5-gcc4.patch
|
7d8d3356a17201832e361df69c63e9a4 qt3-3.3.5-gcc4.patch
|
||||||
|
33
qt3/0999_qt-3.3.5-qlistview.patch
Normal file
33
qt3/0999_qt-3.3.5-qlistview.patch
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
Hi,
|
||||||
|
|
||||||
|
I finally figure out why kxmame mysteriously crashes using qt 3.3.5. This
|
||||||
|
is because QListView::clear() method doesn't reset d->highlighted to NULL.
|
||||||
|
|
||||||
|
This means that after a few tries of clearing and repopulating the item
|
||||||
|
list, d->highlighted might point to an invalid location. When
|
||||||
|
QListViewItem::takeItem is called, d->highlighted is used and causes
|
||||||
|
crash. Remarkably, due to the way it's coded, this bug doesn't appear in
|
||||||
|
Qt 3.3.4.
|
||||||
|
|
||||||
|
I included the fix patch below for your information. I don't want to
|
||||||
|
subscribe to another qt-devel list to send this bug info. So if anyone
|
||||||
|
here can help sending this patch to the proper place, please do.
|
||||||
|
|
||||||
|
Thanks a lot,
|
||||||
|
Toan
|
||||||
|
|
||||||
|
|
||||||
|
diff -uBbr qt-x11-free-3.3.5-old/src/widgets/qlistview.cpp
|
||||||
|
qt-x11-free-3.3.5/src/widgets/qlistview.cpp
|
||||||
|
--- qt-x11-free-3.3.5-old/src/widgets/qlistview.cpp 2005-09-02
|
||||||
|
05:43:15.000000000 -0700
|
||||||
|
+++ qt-x11-free-3.3.5/src/widgets/qlistview.cpp 2005-11-04
|
||||||
|
04:07:40.000000000 -0800
|
||||||
|
@@ -3231,6 +3231,7 @@
|
||||||
|
d->focusItem = 0;
|
||||||
|
d->selectAnchor = 0;
|
||||||
|
d->pressedItem = 0;
|
||||||
|
+ d->highlighted = 0;
|
||||||
|
|
||||||
|
// if it's down its downness makes no sense, so undown it
|
||||||
|
d->buttonDown = FALSE;
|
@ -5,10 +5,10 @@
|
|||||||
|
|
||||||
name=qt3
|
name=qt3
|
||||||
version=3.3.5
|
version=3.3.5
|
||||||
release=1
|
release=2
|
||||||
source=(ftp://ftp.trolltech.com/qt/source/qt-x11-free-$version.tar.bz2 \
|
source=(ftp://ftp.trolltech.com/qt/source/qt-x11-free-$version.tar.bz2 \
|
||||||
http://crux.danm.de/files/dist/$name/$version/$name-$version-2-patches.tar.bz2 \
|
http://crux.danm.de/files/dist/$name/$version/$name-$version-2-patches.tar.bz2 \
|
||||||
$name-$version-gcc4.patch)
|
$name-$version-gcc4.patch 0999_qt-3.3.5-qlistview.patch)
|
||||||
|
|
||||||
build () {
|
build () {
|
||||||
cd qt-x11-free-$version
|
cd qt-x11-free-$version
|
||||||
@ -26,6 +26,9 @@ build () {
|
|||||||
SQL="-qt-sql-mysql -I/usr/include/mysql -L/usr/lib/mysql"
|
SQL="-qt-sql-mysql -I/usr/include/mysql -L/usr/lib/mysql"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# fix serious, crashy bugs in widgets/qlistview.cpp
|
||||||
|
patch -p1 < $SRC/0999_qt-$version-qlistview.patch
|
||||||
|
|
||||||
if [ -d /usr/include/nvidia ]; then
|
if [ -d /usr/include/nvidia ]; then
|
||||||
export CFLAGS="$CFLAGS -I/usr/include/nvidia"
|
export CFLAGS="$CFLAGS -I/usr/include/nvidia"
|
||||||
export CXXFLAGS="$CXXFLAGS -I/usr/include/nvidia"
|
export CXXFLAGS="$CXXFLAGS -I/usr/include/nvidia"
|
||||||
|
Loading…
Reference in New Issue
Block a user