diff --git a/.gitignore b/.gitignore index d73fd4d..8497d19 100644 --- a/.gitignore +++ b/.gitignore @@ -8,3 +8,4 @@ hi32-phonon-gstreamer.png hi48-phonon-gstreamer.png hi64-phonon-gstreamer.png qt-everywhere-opensource-src-4.7.0-beta2.tar.gz +/qt-everywhere-opensource-src-4.7.0-rc1.tar.gz diff --git a/qt-everywhere-opensource-src-4.7.0-beta1-qtwebkit_gtk_init.patch b/qt-everywhere-opensource-src-4.7.0-beta1-qtwebkit_gtk_init.patch deleted file mode 100644 index 42b3c54..0000000 --- a/qt-everywhere-opensource-src-4.7.0-beta1-qtwebkit_gtk_init.patch +++ /dev/null @@ -1,47 +0,0 @@ -diff -up qt-everywhere-opensource-src-4.7.0-beta1/src/3rdparty/webkit/WebCore/plugins/qt/PluginPackageQt.cpp.gtk_init qt-everywhere-opensource-src-4.7.0-beta1/src/3rdparty/webkit/WebCore/plugins/qt/PluginPackageQt.cpp ---- qt-everywhere-opensource-src-4.7.0-beta1/src/3rdparty/webkit/WebCore/plugins/qt/PluginPackageQt.cpp.gtk_init 2010-05-03 19:43:20.000000000 -0500 -+++ qt-everywhere-opensource-src-4.7.0-beta1/src/3rdparty/webkit/WebCore/plugins/qt/PluginPackageQt.cpp 2010-06-18 10:11:20.738800727 -0500 -@@ -35,6 +35,8 @@ - - namespace WebCore { - -+typedef void gtkInitFunc(int *argc, char ***argv); -+ - bool PluginPackage::fetchInfo() - { - if (!load()) -@@ -110,6 +112,8 @@ bool PluginPackage::load() - NP_InitializeFuncPtr NP_Initialize; - NPError npErr; - -+ gtkInitFunc* gtkInit; -+ - NP_Initialize = (NP_InitializeFuncPtr)m_module->resolve("NP_Initialize"); - m_NPP_Shutdown = (NPP_ShutdownProcPtr)m_module->resolve("NP_Shutdown"); - -@@ -127,6 +131,25 @@ bool PluginPackage::load() - m_browserFuncs.getvalue = staticPluginQuirkRequiresGtkToolKit_NPN_GetValue; - } - -+ // WORKAROUND: Prevent gtk based plugin crashes such as BR# 40567 by -+ // explicitly forcing the initializing of Gtk, i.e. calling gtk_init, -+ // whenver the symbol is present in the plugin library loaded above. -+ // Note that this workaround is based on code from the NSPluginClass ctor -+ // in KDE's kdebase/apps/nsplugins/viewer/nsplugin.cpp file. -+ gtkInit = (gtkInitFunc*)m_module->resolve("gtk_init"); -+ if (gtkInit) { -+ // Prevent gtk_init() from replacing the X error handlers, since the Gtk -+ // handlers abort when they receive an X error, thus killing the viewer. -+#ifdef Q_WS_X11 -+ int (*old_error_handler)(Display*, XErrorEvent*) = XSetErrorHandler(0); -+ int (*old_io_error_handler)(Display*) = XSetIOErrorHandler(0); -+#endif -+ gtkInit(0, 0); -+#ifdef Q_WS_X11 -+ XSetErrorHandler(old_error_handler); -+ XSetIOErrorHandler(old_io_error_handler); -+#endif -+ } - #if defined(XP_UNIX) - npErr = NP_Initialize(&m_browserFuncs, &m_pluginFuncs); - #else diff --git a/qt-x11-opensource-src-4.5.3-system_ca_certificates.patch b/qt-x11-opensource-src-4.5.3-system_ca_certificates.patch deleted file mode 100644 index 2dfa554..0000000 --- a/qt-x11-opensource-src-4.5.3-system_ca_certificates.patch +++ /dev/null @@ -1,25 +0,0 @@ -diff -up qt-x11-opensource-src-4.5.3/src/network/ssl/qsslsocket_openssl.cpp.system_ca_certificates qt-x11-opensource-src-4.5.3/src/network/ssl/qsslsocket_openssl.cpp ---- qt-x11-opensource-src-4.5.3/src/network/ssl/qsslsocket_openssl.cpp.system_ca_certificates 2009-09-29 06:01:38.000000000 -0500 -+++ qt-x11-opensource-src-4.5.3/src/network/ssl/qsslsocket_openssl.cpp 2009-10-02 11:20:10.674662746 -0500 -@@ -482,8 +482,20 @@ void QSslSocketPrivate::resetDefaultCiph - - QList QSslSocketPrivate::systemCaCertificates() - { -+ -+ QFile caBundle; -+ -+#ifdef Q_OS_UNIX -+ // Check known locations for the system's default bundle. ### On Windows, -+ // we should use CAPI to find the bundle, and not rely on default unix -+ // locations. -+ caBundle.setFileName(QLatin1String("/etc/pki/tls/certs/ca-bundle.crt")); -+ if (caBundle.open(QIODevice::ReadOnly | QIODevice::Text)) -+ return QSslCertificate::fromDevice(&caBundle); -+#endif -+ - // Qt provides a default bundle of certificates -- QFile caBundle(QLatin1String(":/trolltech/network/ssl/qt-ca-bundle.crt")); -+ caBundle.setFileName(QLatin1String(":/trolltech/network/ssl/qt-ca-bundle.crt")); - if (caBundle.open(QIODevice::ReadOnly | QIODevice::Text)) - return QSslCertificate::fromDevice(&caBundle); - diff --git a/qt.spec b/qt.spec index 1ae6f93..6db3bdc 100644 --- a/qt.spec +++ b/qt.spec @@ -11,13 +11,13 @@ # enable kde-qt integration/patches #define kde_qt 1 -%define pre beta2 +%define pre rc1 Summary: Qt toolkit Name: qt Epoch: 1 Version: 4.7.0 -Release: 0.26.%{pre}%{?dist} +Release: 0.27.%{pre}%{?dist} # See LGPL_EXCEPTIONS.txt, LICENSE.GPL3, respectively, for exception details License: LGPLv2 with exceptions or GPLv3 with exceptions @@ -45,8 +45,6 @@ Patch15: qt-x11-opensource-src-4.5.1-enable_ft_lcdfilter.patch # omit for now, (seems?) causes unwelcome side-effects -- Rex Patch16: qt-everywhere-opensource-src-4.7.0-beta2-kde4_plugins.patch Patch19: qt-everywhere-opensource-src-4.7.0-beta2-phonon_servicesfile.patch -# use system ca-bundle certs, http://bugzilla.redhat.com/521911 -Patch22: qt-x11-opensource-src-4.5.3-system_ca_certificates.patch Requires: ca-certificates # may be upstreamable, not sure yet # workaround for gdal/grass crashers wrt glib_eventloop null deref's @@ -68,8 +66,6 @@ Patch58: qt-everywhere-opensource-src-4.7.0-beta1-qtwebkit_pluginpath.patch # security patches # upstream patches -# https://bugs.webkit.org/show_bug.cgi?id=40567 -Patch100: qt-everywhere-opensource-src-4.7.0-beta1-qtwebkit_gtk_init.patch # http://bugreports.qt.nokia.com/browse/QTBUG-10809 Patch101: http://qt.gitorious.org/+qt-developers/qt/staging/commit/9a1b0695277a3864b42d082095962f8742cdcf04.patch @@ -417,7 +413,6 @@ Qt libraries used for drawing widgets and OpenGL items. %patch15 -p1 -b .enable_ft_lcdfilter #patch16 -p1 -b .kde4_plugins %patch19 -p1 -b .phonon_servicesfile -%patch22 -p1 -b .system_ca_certificates %patch23 -p1 -b .glib_eventloop_nullcheck ## TODO: still worth carrying? if so, upstream it. %patch53 -p1 -b .qatomic-inline-asm @@ -430,7 +425,6 @@ Qt libraries used for drawing widgets and OpenGL items. # security fixes # upstream patches -%patch100 -p1 -b .qtwebkit_gtk_init %patch101 -p1 -b .QTBUG-10809 # kde-qt branch @@ -1097,6 +1091,9 @@ fi %changelog +* Thu Aug 26 2010 Than Ngo - 4.7.0-0.27.rc1 +- 4.7.0 rc1 + * Thu Jul 08 2010 Rex Dieter - 4.7.0-0.26.beta2 - rebase patches, avoiding use of patch fuzz - omit old qt-copy/kde-qt patches, pending review diff --git a/sources b/sources index b4fa2cc..4d1ce9c 100644 --- a/sources +++ b/sources @@ -1,10 +1 @@ -d9f511e4b51983b4e10eb58b320416d5 hi128-app-qt4-logo.png -6dcc0672ff9e60a6b83f95c5f42bec5b hi48-app-qt4-logo.png -8e3924f417fea67f72b2105faed2119c gstreamer-logo.svg -60de9d7e1cddd019f09fd036f0e5413a hi128-phonon-gstreamer.png -7ca265e0cf75b3b4c81e1490d3dba3be hi16-phonon-gstreamer.png -0a9f69d901aded140d4fed969c22e14f hi22-phonon-gstreamer.png -12db12c009b722a6dc141f78feb7e330 hi32-phonon-gstreamer.png -86c34a1b81d44980b1381f94ed6b7a23 hi48-phonon-gstreamer.png -153505c71ec021b0a3bd4b74f2492e93 hi64-phonon-gstreamer.png -1449443c2d33ab9fefbd37b7104d0cdf qt-everywhere-opensource-src-4.7.0-beta2.tar.gz +6ba503cea2f91c38b34594ed68c15d9a qt-everywhere-opensource-src-4.7.0-rc1.tar.gz