Date: Tuesday, February 7, 2012 @ 00:38:52 Author: eric Revision: 149355
upgpkg: qt3 1:3.3.8b-1 Upstream update, Remove old patches Modified: qt3/trunk/PKGBUILD qt3/trunk/qt-copy-kde-patches.tar.bz2 Deleted: qt3/trunk/mysql.patch qt3/trunk/qt-font-default-subst.diff qt3/trunk/utf8-bug-qt3.diff ----------------------------+ PKGBUILD | 29 ++++-------- mysql.patch | 47 -------------------- qt-font-default-subst.diff | 77 -------------------------------- utf8-bug-qt3.diff | 101 ------------------------------------------- 4 files changed, 10 insertions(+), 244 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2012-02-07 03:51:50 UTC (rev 149354) +++ PKGBUILD 2012-02-07 05:38:52 UTC (rev 149355) @@ -2,8 +2,9 @@ # Maintainer: Eric Bélanger <[email protected]> pkgname=qt3 -pkgver=3.3.8 -pkgrel=22 +pkgver=3.3.8b +pkgrel=1 +epoch=1 pkgdesc="The QT3 gui toolkit" arch=('i686' 'x86_64') url="http://www.trolltech.com/products/qt/index.html" @@ -14,18 +15,14 @@ optdepends=('libmysqlclient' 'postgresql-libs' 'unixodbc') options=('!libtool') install=qt.install -source=(ftp://ftp.trolltech.com/qt/source/qt-x11-free-${pkgver}.tar.bz2 - qt.profile qt3-png15.patch qt-copy-kde-patches.tar.bz2 - qt-patches.tar.bz2 utf8-bug-qt3.diff qt-font-default-subst.diff - mysql.patch eastern_asian_languagues.diff qt-odbc.patch gcc-4.6.patch) -sha1sums=('91b192cb8e80679607d24ae35d6e20ed68d149d7' +source=(ftp://ftp.trolltech.com/qt/source/qt-x11-free-${pkgver}.tar.gz + qt.profile qt3-png15.patch qt-copy-kde-patches.tar.bz2 qt-patches.tar.bz2 + eastern_asian_languagues.diff qt-odbc.patch gcc-4.6.patch) +sha1sums=('745def6250dc7f337dbb265e20bf38dcb41fd854' 'd2e257a9011208b2cb81b9cf47915b9a2f9dab83' '3d19510c46016a1a211d97bf8f82b01498b1b33c' - '9cb2e5bec782069692ee337cfa171539d9d73753' + '33418e5b117458af23c72cdbffc0c339bc34bdc4' '116afa0e737bdf27ea27f9b3653aeb56db9ec151' - 'ca5ecb29c7f1c826d48703339a3371038e306bb7' - 'd928ff55adb52c4bab2fb268df022651551cd70c' - 'bb6aad81cce143c23ff7840b1d79f6b2007a0c04' '40c7b8f06a21f809ddeb8b5560e9da63ccac6a17' '1346320614f6f86fbeb10b9fbad721dea29f5b61' 'd9b83b8f6f9c8bd98d290dc1d0e9913a00b62c3f') @@ -42,18 +39,12 @@ cd "${srcdir}"/qt-x11-free-${pkgver} # apply qt patches from kde.org for i in ../qt-copy-kde-patches/*; do - patch -Np0 -i $i + patch -p0 -i $i done # apply other qt patches and one security fix from debian/gentoo for i in ../qt-patches/*; do - patch -Np1 -i $i + patch -p1 -i $i done - # fix utf8 bug - patch -p0 -i "${srcdir}"/utf8-bug-qt3.diff - # fix asia fonts - patch -p0 -i "${srcdir}"/qt-font-default-subst.diff - # fix segfaults on exit when using mysql DB driver - patch -p0 -i "${srcdir}"/mysql.patch # fix CJK font/chars select error (FS#11245) patch -p1 -i "${srcdir}"/eastern_asian_languagues.diff # fix build problem against new unixODBC Deleted: mysql.patch =================================================================== --- mysql.patch 2012-02-07 03:51:50 UTC (rev 149354) +++ mysql.patch 2012-02-07 05:38:52 UTC (rev 149355) @@ -1,47 +0,0 @@ ---- src/sql/drivers/mysql/qsql_mysql.cpp -+++ src/sql/drivers/mysql/qsql_mysql.cpp -@@ -37,7 +37,6 @@ - #include "qsql_mysql.h" - #include <private/qsqlextension_p.h> - --#include <qapplication.h> - #include <qdatetime.h> - #include <qvaluevector.h> - #include <qsqlrecord.h> -@@ -341,14 +340,6 @@ int QMYSQLResult::numRowsAffected() - } - - ///////////////////////////////////////////////////////// --static void qServerEnd() --{ --#ifndef Q_NO_MYSQL_EMBEDDED --# if MYSQL_VERSION_ID >= 40000 -- mysql_server_end(); --# endif // MYSQL_VERSION_ID --#endif // Q_NO_MYSQL_EMBEDDED --} - - static void qServerInit() - { -@@ -366,9 +357,7 @@ static void qServerInit() - qWarning( "QMYSQLDriver::qServerInit: unable to start server." ); - # endif - } -- qAddPostRoutine(qServerEnd); - init = TRUE; -- - # endif // MYSQL_VERSION_ID - #endif // Q_NO_MYSQL_EMBEDDED - } -@@ -411,6 +400,11 @@ QMYSQLDriver::~QMYSQLDriver() - QSqlOpenExtension *ext = qSqlOpenExtDict()->take( this ); - delete ext; - } -+#ifndef Q_NO_MYSQL_EMBEDDED -+# if MYSQL_VERSION_ID > 40000 -+ mysql_server_end(); -+# endif -+#endif - } - - bool QMYSQLDriver::hasFeature( DriverFeature f ) const Modified: qt-copy-kde-patches.tar.bz2 =================================================================== (Binary files differ) Deleted: qt-font-default-subst.diff =================================================================== --- qt-font-default-subst.diff 2012-02-07 03:51:50 UTC (rev 149354) +++ qt-font-default-subst.diff 2012-02-07 05:38:52 UTC (rev 149355) @@ -1,77 +0,0 @@ ---- src/kernel/qfontdatabase_x11.cpp -+++ src/kernel/qfontdatabase_x11.cpp -@@ -1589,15 +1589,6 @@ QFontEngine *loadEngine( QFont::Script s - if (script == QFont::Latin) - // add Euro character - FcCharSetAddChar(cs, 0x20ac); -- if (script == QFont::Han_SimplifiedChinese) -- FcCharSetAddChar(cs, 0x3400); -- if (script == QFont::Han_TraditionalChinese){ -- FcCharSetAddChar(cs, 0x3435); -- FcCharSetAddChar(cs, 0xE000); -- FcCharSetAddChar(cs, 0xF6B1); -- } -- if (script == QFont::MiscellaneousSymbols) -- FcCharSetAddChar(cs, 0x2714); - FcPatternAddCharSet(pattern, FC_CHARSET, cs); - FcCharSetDestroy(cs); - } -@@ -1813,7 +1804,11 @@ static QFontEngine *loadFontConfigFont(c - FcPatternPrint(pattern); - #endif - -+ // XftFontMatch calls the right ConfigSubstitute variants, but as we use -+ // FcFontMatch/Sort here we have to do it manually. - FcConfigSubstitute(0, pattern, FcMatchPattern); -+ XftDefaultSubstitute(QPaintDevice::x11AppDisplay(), QPaintDevice::x11AppScreen(), pattern); -+ - // qDebug("1: pattern contains:"); - // FcPatternPrint(pattern); - -@@ -1847,10 +1842,6 @@ static QFontEngine *loadFontConfigFont(c - value.u.s = (const FcChar8 *)cs.data(); - FcPatternAddWeak(pattern, FC_FAMILY, value, FcTrue); - } --#ifdef FONT_MATCH_DEBUG -- printf("final pattern contains:\n"); -- FcPatternPrint(pattern); --#endif - } - - if (script != QFont::Unicode) { -@@ -1860,19 +1851,15 @@ static QFontEngine *loadFontConfigFont(c - if (script == QFont::Latin) - // add Euro character - FcCharSetAddChar(cs, 0x20ac); -- if (script == QFont::Han_SimplifiedChinese) -- FcCharSetAddChar(cs, 0x3400); -- if (script == QFont::Han_TraditionalChinese) { -- FcCharSetAddChar(cs, 0x3435); -- FcCharSetAddChar(cs, 0xE000); -- FcCharSetAddChar(cs, 0xF6B1); -- } -- if (script == QFont::MiscellaneousSymbols) -- FcCharSetAddChar(cs, 0x2714); - FcPatternAddCharSet(pattern, FC_CHARSET, cs); - FcCharSetDestroy(cs); - } - -+#ifdef FONT_MATCH_DEBUG -+ printf("final pattern contains:\n"); -+ FcPatternPrint(pattern); -+#endif -+ - QFontEngine *fe = 0; - - for( int jj = (FcGetVersion() >= 20392 ? 0 : 1); jj < 2; ++jj ) { ---- src/kernel/qfontdatabase.cpp -+++ src/kernel/qfontdatabase.cpp -@@ -554,7 +554,7 @@ static const unsigned short sample_chars - // GeometricSymbols, - { 0x2500, 0x0 }, - // MiscellaneousSymbols, -- { 0x2640, 0x0 }, -+ { 0x2640, 0x2714, 0x0 }, - // EnclosedAndSquare, - { 0x2460, 0x0 }, - // Braille, Deleted: utf8-bug-qt3.diff =================================================================== --- utf8-bug-qt3.diff 2012-02-07 03:51:50 UTC (rev 149354) +++ utf8-bug-qt3.diff 2012-02-07 05:38:52 UTC (rev 149355) @@ -1,101 +0,0 @@ ---- src/codecs/qutfcodec.cpp -+++ src/codecs/qutfcodec.cpp -@@ -154,6 +154,7 @@ - - class QUtf8Decoder : public QTextDecoder { - uint uc; -+ uint min_uc; - int need; - bool headerDone; - public: -@@ -167,8 +168,9 @@ - result.setLength( len ); // worst case - QChar *qch = (QChar *)result.unicode(); - uchar ch; -+ int error = -1; - for (int i=0; i<len; i++) { -- ch = *chars++; -+ ch = chars[i]; - if (need) { - if ( (ch&0xc0) == 0x80 ) { - uc = (uc << 6) | (ch & 0x3f); -@@ -182,6 +184,8 @@ - *qch++ = QChar(high); - *qch++ = QChar(low); - headerDone = TRUE; -+ } else if ((uc < min_uc) || (uc >= 0xd800 && uc <= 0xdfff) || (uc >= 0xfffe)) { -+ *qch++ = QChar::replacement; - } else { - if (headerDone || QChar(uc) != QChar::byteOrderMark) - *qch++ = uc; -@@ -190,6 +194,7 @@ - } - } else { - // error -+ i = error; - *qch++ = QChar::replacement; - need = 0; - } -@@ -200,12 +205,21 @@ - } else if ((ch & 0xe0) == 0xc0) { - uc = ch & 0x1f; - need = 1; -+ error = i; -+ min_uc = 0x80; - } else if ((ch & 0xf0) == 0xe0) { - uc = ch & 0x0f; - need = 2; -+ error = i; -+ min_uc = 0x800; - } else if ((ch&0xf8) == 0xf0) { - uc = ch & 0x07; - need = 3; -+ error = i; -+ min_uc = 0x10000; -+ } else { -+ // error -+ *qch++ = QChar::replacement; - } - } - } ---- src/tools/qstring.cpp -+++ src/tools/qstring.cpp -@@ -5805,6 +5805,7 @@ - result.setLength( len ); // worst case - QChar *qch = (QChar *)result.unicode(); - uint uc = 0; -+ uint min_uc = 0; - int need = 0; - int error = -1; - uchar ch; -@@ -5822,6 +5823,12 @@ - unsigned short low = uc%0x400 + 0xdc00; - *qch++ = QChar(high); - *qch++ = QChar(low); -+ } else if (uc < min_uc || (uc >= 0xd800 && uc <= 0xdfff) || (uc >= 0xfffe)) { -+ // overlong seqence, UTF16 surrogate or BOM -+ i = error; -+ qch = addOne(qch, result); -+ *qch++ = QChar(0xdbff); -+ *qch++ = QChar(0xde00+((uchar)utf8[i])); - } else { - *qch++ = uc; - } -@@ -5844,14 +5851,17 @@ - uc = ch & 0x1f; - need = 1; - error = i; -+ min_uc = 0x80; - } else if ((ch & 0xf0) == 0xe0) { - uc = ch & 0x0f; - need = 2; - error = i; -+ min_uc = 0x800; - } else if ((ch&0xf8) == 0xf0) { - uc = ch & 0x07; - need = 3; - error = i; -+ min_uc = 0x10000; - } else { - // Error - qch = addOne(qch, result);
